1056945713: 13217: not freed: '0x80f5008|s1' (12346 bytes) from
'ra=0x4034b2cb'
Hi I'm getting these lines in my logfile and I want to know where this
return addess is in my program. I setup my shell with the dmalloc and
my .dmallocrc per the docs. Then I do:
$ dmalloc -a 0x4034b2cb:1 -l logfile -i 1 -V
$ dmalloc debug1
...unfortunately I get:
(gdb) x 0x4034b2cb
0x4034b2cb: Cannot access memory at address 0x4034b2cb
...plus the prog never stops (I thought it was supposed to stop if it
sees the ra I specify?)
I'm using RedHat Linux 9.0
$ echo $DMALLOC_OPTIONS
debug=0x403,addr=0x4034b2cb:1,inter=1,log=logfile
Compile line:
$ cc -g -o res_leak3 res_leak3.c -L/usr/X11R6/lib -lXm -lXbae -ldmalloc
$ gdb --version
GNU gdb Red Hat Linux (5.3post-0.20021129.18rh)
$ dmalloc --version
dmalloc: = 5.2.0
$ uname -a
Linux machname 2.4.20-18.9 #1 Thu May 29 06:54:41 EDT 2003 i686 athlon
i386 GNU/Linux
...also I see this:
(gdb) break dmalloc_error
Function "dmalloc_error" not defined.
The "12346" byte allocation is a special size I'm using to try and
track down a leak...at least that seems to be working. Any help to
find out where the ra's are in the source is appreciated.