Actions
Bug #6490
closedThe 'printf' method in trace_func is not sent to 'stdout' variable in tracer.rb
Description
Hi,
lib/tracer.rb:189
def trace_func(event, file, line, id, binding, klass, *) # :nodoc:
return if file == FILE
for p in @filters
return unless p.call event, file, line, id, binding, klass
end
return unless Tracer::display_c_call? or
event != "c-call" && event != "c-return"
Tracer::stdout_mutex.synchronize do
if EVENT_SYMBOL[event]
stdout.printf("<%d>", $$) if Tracer::display_process_id?
stdout.printf("#%d:", get_thread_no) if Tracer::display_thread_id?
if line == 0
source = "?\n"
else
source = get_line(file, line)
end
printf("%s:%d:%s:%s: %s",
file,
line,
klass || '',
EVENT_SYMBOL[event],
source)
end
end
end
As you see, the last 'printf' method is not sent to 'stdout' which unfortunately leads to have the output of Tracer print
always to STDOUT.
Files
Actions
Like0
Like0Like0Like0Like0Like0