[issue2218] Enhanced hotshot profiler with high-resolution timer

Jean Brouwers report at bugs.python.org
Sat Mar 8 22:05:32 CET 2008


Jean Brouwers added the comment:

There are 7 other, potentially serious issues in the original _hotshot.c 
file.  All those are being fixed for the next version of the enhanced 
hotshot files.

The 7 issues are:

1) functions flush_data and do_stop may create an infinite recursion on 
line 567.

2) The pack_string and pack_add_info functions do not check for string 
lengths exceeding BUFFERSIZE and may corrupt memory in that case.

3) In line 1182, linetimings should be frametimngs:
   {"frametimings", T_LONG, offsetof(ProfilerObject, linetimings), 
READONLY},

4) Coverage members frametimings, linetimings and lineevents are set on 
line 1562 ff. after different values may have been written into the log 
file header by function write_header on lines 1440 ff.

5) The coverage__doc__ on line 1546 is incomplete.

6) At several places, errors are detected but not reported and not sets.

7) An int value is passed where a long is specified or expected.  T_LONG 
should be T_INT on lines 1182-1184 and there are several calls to PyInt_FromLong with an int argument on line 487 ff. and other places.

__________________________________
Tracker <report at bugs.python.org>
<http://bugs.python.org/issue2218>
__________________________________


More information about the Python-bugs-list mailing list