limdoglim / google-breakpad

Automatically exported from code.google.com/p/google-breakpad
0 stars 0 forks source link

Linux dump_syms produces bad line numbers for some functions #191

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
FUNC 804a53 59 0 sqlite3ExprSpan
804a53 8 -28379 2925
804a5b 3 -28379 2925
804a5e 14 -28376 2925
804a72 6 -28374 2925
804a78 a -28370 2925
804a82 4 -28367 2925
804a86 6 -28374 2925
804a8c 6 -28373 2925
804a92 1a -28372 2925

The bogus line numbers continue for some functions.  It doesn't seem to
affect every function in that source file, but quite a few.

Original issue reported on code.google.com by ted.mielczarek on 28 Jun 2007 at 3:22

GoogleCodeExporter commented 9 years ago
This appears to be overflow of a 2-byte integer.  These functions are from 
sqlite3.c,
which is a huge file containing the entire sqlite implementation.  In our tree, 
the
function "sqlite3VdbeExec" starts at line 32221 and ends at line 36841, and sure
enough, the line numbers in that function go from ok to negative, and functions 
after
that seem to have negative numbers.

Original comment by ted.mielczarek on 29 Jun 2007 at 1:59

GoogleCodeExporter commented 9 years ago
This fixes my problem.  Thankfully sqlite3.c is slightly less than 64k lines, 
or we
might have an even bigger problem.  I guess that's just a limitation of stabs 
though.

Original comment by ted.mielczarek on 1 Jul 2007 at 3:31

Attachments:

GoogleCodeExporter commented 9 years ago

Original comment by ted.mielczarek on 2 Jul 2007 at 12:07