Actions
Bug #6490
closedThe 'printf' method in trace_func is not sent to 'stdout' variable in tracer.rb
Bug #6490:
The '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