diff --git a/tests/GLProgramsTest.cpp b/tests/GLProgramsTest.cpp
index fe17f88..13d0d2e 100644
--- a/tests/GLProgramsTest.cpp
+++ b/tests/GLProgramsTest.cpp
@@ -78,6 +78,7 @@
 
     bool dstRead = false;
     bool fragPos = false;
+    bool vertexCode = false;
     int numStages = numColorStages + numCoverageStages;
     for (int s = 0; s < numStages; ++s) {
         const GrBackendEffectFactory& factory = (*stages[s]->getEffect())->getFactory();
@@ -89,6 +90,9 @@
         if ((*stages[s]->getEffect())->willReadFragmentPosition()) {
             fragPos = true;
         }
+        if ((*stages[s]->getEffect())->hasVertexCode()) {
+            vertexCode = true;
+        }
     }
 
     if (dstRead) {
@@ -103,6 +107,11 @@
         header->fFragPosKey = 0;
     }
 
+    header->fHasVertexCode = vertexCode ||
+                             useLocalCoords ||
+                             kAttribute_ColorInput == header->fColorInput ||
+                             kAttribute_ColorInput == header->fCoverageInput;
+
     CoverageOutput coverageOutput;
     bool illegalCoverageOutput;
     do {
