]> git.cworth.org Git - apitrace/blobdiff - cli/cli_pickle.cpp
cli: Rename replay -> retrace.
[apitrace] / cli / cli_pickle.cpp
index e3222dbbdc37500119a857df908c36a90244ea05..3a9129f8782d0f4a1dc7b2d81616c37c0654e273 100644 (file)
@@ -145,13 +145,21 @@ public:
     }
 
     void visit(Blob *node) {
-        writer.writeString((const char *)node->buf, node->size);
+        writer.writeByteArray(node->buf, node->size);
     }
 
     void visit(Pointer *node) {
         writer.writeInt(node->value);
     }
 
+    void visit(Repr *r) {
+        if (symbolic) {
+            _visit(r->humanValue);
+        } else {
+            _visit(r->machineValue);
+        }
+    }
+
     void visit(Call *call) {
         writer.beginTuple();
 
@@ -238,6 +246,8 @@ command(int argc, char *argv[])
 
     os::setBinaryMode(stdout);
     
+    std::cout.sync_with_stdio(false);
+
     PickleWriter writer(std::cout);
     PickleVisitor visitor(writer, symbolic);
 
@@ -245,7 +255,6 @@ command(int argc, char *argv[])
         trace::Parser parser;
 
         if (!parser.open(argv[i])) {
-            std::cerr << "error: failed to open " << argv[i] << "\n";
             return 1;
         }