message: Skip initial application of FBO 0 state, before context FBO is created
diff: @@ -1611,6 +1611,10 @@ void GLRenderState::ApplyState(WrappedOpenGL *driver)
  // this will always return true during capture, but on replay we only do
  // this work if we're on the replay context
  if(driver->GetReplay()->IsReplayContext(ctx.ctx))
  + {
  + GLuint fbo = driver->GetCurrentDefaultFBO();
  +
  + if(fbo)
  {
  // apply drawbuffers/readbuffer to default framebuffer
  GL.glBindFramebuffer(eGL_READ_FRAMEBUFFER, driver->GetCurrentDefaultFBO());
  @@ -1619,16 +1623,17 @@ void GLRenderState::ApplyState(WrappedOpenGL *driver)
  // see above for reasoning for this
  GL.glReadBuffer(eGL_COLOR_ATTACHMENT0);
  + }
  if(ReadFBO.name)
  GL.glBindFramebuffer(eGL_READ_FRAMEBUFFER, ReadFBO.name);
  - else
  - GL.glBindFramebuffer(eGL_READ_FRAMEBUFFER, driver->GetCurrentDefaultFBO());
  + else if(fbo)
  + GL.glBindFramebuffer(eGL_READ_FRAMEBUFFER, fbo);
  if(DrawFBO.name)
  GL.glBindFramebuffer(eGL_DRAW_FRAMEBUFFER, DrawFBO.name);
  - else
  - GL.glBindFramebuffer(eGL_DRAW_FRAMEBUFFER, driver->GetCurrentDefaultFBO());
  + else if(fbo)
  + GL.glBindFramebuffer(eGL_DRAW_FRAMEBUFFER, fbo);
  }
  GL.glHint(eGL_FRAGMENT_SHADER_DERIVATIVE_HINT, Hints.Derivatives);
  