X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=retrace%2Fretrace.cpp;h=ee876ca3eae2c5ebe092c374df1340b1c4a42020;hb=HEAD;hp=182d1182eece7f2768ebaf15df8de70f249e14d6;hpb=6d92327e88d2bb4c03a1b84663e50497f99fc24f;p=apitrace diff --git a/retrace/retrace.cpp b/retrace/retrace.cpp index 182d118..ee876ca 100644 --- a/retrace/retrace.cpp +++ b/retrace/retrace.cpp @@ -40,6 +40,7 @@ static bool call_dumped = false; static void dumpCall(trace::Call &call) { if (verbosity >= 0 && !call_dumped) { + std::cout << std::hex << call.thread_id << std::dec << " "; std::cout << call; std::cout.flush(); call_dumped = true; @@ -82,13 +83,6 @@ void Retracer::addCallbacks(const Entry *entries) { void Retracer::retrace(trace::Call &call) { call_dumped = false; - if (verbosity >= 1) { - if (verbosity >= 2 || - !(call.flags & trace::CALL_FLAG_VERBOSE)) { - dumpCall(call); - } - } - Callback callback = 0; trace::Id id = call.sig->id; @@ -112,6 +106,14 @@ void Retracer::retrace(trace::Call &call) { assert(callback); assert(callbacks[id] == callback); + if (verbosity >= 1) { + if (verbosity >= 2 || + (!(call.flags & trace::CALL_FLAG_VERBOSE) && + callback != &ignore)) { + dumpCall(call); + } + } + callback(call); }