]> git.cworth.org Git - apitrace/commitdiff
Attempt to retrace incomplete calls.
authorJosé Fonseca <jose.r.fonseca@gmail.com>
Sat, 24 Sep 2011 14:04:08 +0000 (15:04 +0100)
committerJosé Fonseca <jose.r.fonseca@gmail.com>
Sat, 24 Sep 2011 14:04:08 +0000 (15:04 +0100)
common/trace_parser.cpp

index d7b20d2c450faaab61cc986c6c046b72df5a4caa..a72857700ed40aef073eece9b21a75b6106c4c2b 100644 (file)
@@ -179,9 +179,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;
         }