simple fix?
authormtklein <mtklein@chromium.org>
Thu, 15 Sep 2016 16:56:28 +0000 (09:56 -0700)
committerCommit bot <commit-bot@chromium.org>
Thu, 15 Sep 2016 16:56:28 +0000 (09:56 -0700)
Scope cmdInfo more tightly to where it's not a null reference.

BUG=skia:5759
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2342063002

Review-Url: https://codereview.chromium.org/2342063002

src/gpu/instanced/GLInstancedRendering.cpp

index 3d9058e..bd014ec 100644 (file)
@@ -242,18 +242,19 @@ void GLInstancedRendering::onDraw(const GrPipeline& pipeline, const InstanceProc
     int emulatedBaseInstance = batch->fEmulatedBaseInstance;
     for (int i = 0; i < numCommands; ++i) {
         int glCmdIdx = batch->fGLDrawCmdsIdx + i;
-        const GLDrawCmdInfo& cmdInfo = fGLDrawCmdsInfo[glCmdIdx];
         this->flushInstanceAttribs(emulatedBaseInstance);
         if (fDrawIndirectBuffer) {
             GL_CALL(DrawElementsIndirect(GR_GL_TRIANGLES, GR_GL_UNSIGNED_BYTE,
                                          (GrGLDrawElementsIndirectCommand*) nullptr + glCmdIdx));
         } else {
+            const GLDrawCmdInfo& cmdInfo = fGLDrawCmdsInfo[glCmdIdx];
             GL_CALL(DrawElementsInstanced(GR_GL_TRIANGLES, cmdInfo.fGeometry.fCount,
                                           GR_GL_UNSIGNED_BYTE,
                                           (GrGLubyte*) nullptr + cmdInfo.fGeometry.fStart,
                                           cmdInfo.fInstanceCount));
         }
         if (!glCaps.baseInstanceSupport()) {
+            const GLDrawCmdInfo& cmdInfo = fGLDrawCmdsInfo[glCmdIdx];
             emulatedBaseInstance += cmdInfo.fInstanceCount;
         }
     }