Hairline batch

BUG=skia:

Committed: https://skia.googlesource.com/skia/+/6eff8701f027016fbb3147412ec2292dcec2b7f5

Committed: https://skia.googlesource.com/skia/+/658d55cd6121c67488aaf5d0832c9712737f26a5

Review URL: https://codereview.chromium.org/876673002
diff --git a/src/gpu/GrInOrderDrawBuffer.cpp b/src/gpu/GrInOrderDrawBuffer.cpp
index 4629d4f..3e177ed 100644
--- a/src/gpu/GrInOrderDrawBuffer.cpp
+++ b/src/gpu/GrInOrderDrawBuffer.cpp
@@ -460,7 +460,9 @@
 
     int currCmdMarker = 0;
 
+    int i = 0;
     while (iter.next()) {
+        i++;
         GrGpuTraceMarker newMarker("", -1);
         SkString traceString;
         if (cmd_has_trace_marker(iter->fType)) {
@@ -472,7 +474,8 @@
 
         // TODO temporary hack
         if (kDrawBatch_Cmd == strip_trace_bit(iter->fType)) {
-            fBatchTarget.flushNext();
+            DrawBatch* db = reinterpret_cast<DrawBatch*>(iter.get());
+            fBatchTarget.flushNext(db->fBatch->numberOfDraws());
             continue;
         }
 
@@ -652,7 +655,9 @@
 
 void GrInOrderDrawBuffer::closeBatch() {
     if (fDrawBatch) {
+        fBatchTarget.resetNumberOfDraws();
         fDrawBatch->execute(this, fPrevState);
+        fDrawBatch->fBatch->setNumberOfDraws(fBatchTarget.numberOfDraws());
         fDrawBatch = NULL;
     }
 }