Dmitry Timoshkov : ntdll: Return from snoop tracing helpers earlier if tracing is disabled.
Module: wine Branch: master Commit: 6262cc325f1ee03e207ae494d3fd7867dcb7262d URL: http://source.winehq.org/git/wine.git/?a=commit;h=6262cc325f1ee03e207ae494d3... Author: Dmitry Timoshkov <dmitry(a)baikal.ru> Date: Mon Oct 19 10:28:31 2015 +0800 ntdll: Return from snoop tracing helpers earlier if tracing is disabled. This allows turning off and on snooping from task manager. Signed-off-by: Dmitry Timoshkov <dmitry(a)baikal.ru> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/ntdll/relay.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/dlls/ntdll/relay.c b/dlls/ntdll/relay.c index ef0af0f..997de1f 100644 --- a/dlls/ntdll/relay.c +++ b/dlls/ntdll/relay.c @@ -1085,6 +1085,8 @@ void WINAPI __regs_SNOOP_Entry( CONTEXT *context ) context->Eip = (DWORD)fun->origfun; + if (!TRACE_ON(snoop)) return; + if (TRACE_ON(timestamp)) print_timestamp(); if (fun->name) DPRINTF("%04x:CALL %s.%s(",GetCurrentThreadId(),dll->name,fun->name); @@ -1121,6 +1123,12 @@ void WINAPI __regs_SNOOP_Return( CONTEXT *context ) if (ret->dll->funs[ret->ordinal].nrofargs<0) ret->dll->funs[ret->ordinal].nrofargs=(context->Esp - ret->origESP-4)/4; context->Eip = (DWORD)ret->origreturn; + + if (!TRACE_ON(snoop)) { + ret->origreturn = NULL; /* mark as empty */ + return; + } + if (TRACE_ON(timestamp)) print_timestamp(); if (ret->args) {
participants (1)
-
Alexandre Julliard