]> git.cworth.org Git - apitrace/blobdiff - common/trace_parser.cpp
Merge branch 'd3d10'
[apitrace] / common / trace_parser.cpp
index d7b20d2c450faaab61cc986c6c046b72df5a4caa..2eff0cda90bda893c9bbcf64e68c8c23158deff3 100644 (file)
@@ -148,6 +148,8 @@ void Parser::close(void) {
         }
     }
     bitmasks.clear();
+
+    next_call_no = 0;
 }
 
 
@@ -179,9 +181,11 @@ Call *Parser::parse_call(Mode mode) {
             std::cerr << "error: unknown event " << c << "\n";
             exit(1);
         case -1:
-            for (CallList::iterator it = calls.begin(); it != calls.end(); ++it) {
-                std::cerr << "warning: incomplete call " << (*it)->name() << "\n";
-                std::cerr << **it << "\n";
+            if (!calls.empty()) {
+                Call *call = calls.front();
+                std::cerr << call->no << ": warning: incomplete call " << call->name() << "\n";
+                calls.pop_front();
+                return call;
             }
             return NULL;
         }