Re: GGI leak
On 1999/Dec/12, Marcus Sundberg wrote: I was deleting a lot of leaks in GGL, and I think I've found a leak into GGI, here is the stack info: What tool did you use for that btw? memprof. Very usefull, seems to read symbol tables and let you launch xemacs, fte or what you like at the line where the leak was detected, see the memory usage of your program dinamically, and the memory usage of each function of your program. It also generates files with the info, and of course, it comes with Debian (potato) :) (Yes, surely there are more tools, but this one [+ gdb + efence] is enough for me now). -- _ /_) \/ / / email: mailto:[EMAIL PROTECTED] / \ / (_/ www : http://programacion.mundivia.es/ryu [ GGL developer ] [ IRCore developer ] [ GPUL member ]
GGI leak
I was deleting a lot of leaks in GGL, and I think I've found a leak into GGI, here is the stack info: Leaked 0x806ecf0 (2048 bytes) _default_zero(): /tmp/degas/lib/ggi2-1.99.2.0b2.1/ggi/visual.c:46 alloc_fb(): /tmp/degas/lib/ggi2-1.99.2.0b2.1/display/memory/mode.c:91 _GGIdomode(): /tmp/degas/lib/ggi2-1.99.2.0b2.1/display/memory/mode.c:145 _GGIdomode(): /tmp/degas/lib/ggi2-1.99.2.0b2.1/display/memory/mode.c:169 _ggiCheck4Defaults(): /tmp/degas/lib/ggi2-1.99.2.0b2.1/ggi/mode.c:68 ggl_visual_set_mode(): /home/ryu/devel/GPUL/ggl/src/graphics/gglvisual.c:105 ggl_timeout_start(): /home/ryu/devel/GPUL/ggl/src/ggltimeout.c:152 ggl_timeout_start(): /home/ryu/devel/GPUL/ggl/src/ggltimeout.c:152 ggl_timeout_start(): /home/ryu/devel/GPUL/ggl/src/ggltimeout.c:152 ggl_timeout_start(): /home/ryu/devel/GPUL/ggl/src/ggltimeout.c:152 (???) _start(): (null):0 I thought that maybe this leak were produced because of GGL code, but I couldn't find more leaks on it. The code at line 105 of ggl_visual_set_mode() is: error= ggiSetMode(visual-visual,gmode); And visual-visual is a successfully opened visual with the type shown below: struct _GglVisual{ GglBase base; /* Base class */ int id; /* Class Identifier */ ggi_visual_t visual; /* GGI Visual*/ [...] The code at line 152 of ggl_timeout_start does nothing but return a number (no mallocs). The reason why the stack looks like this is that I catch alarm signal and use linux interval timers [setitimer()]. The example that I've tested creates 24 visuals (1 with target X and 23 with target memory) and never loses pointers to any of them. I wish this is enough information :) -- _ /_) \/ / / email: mailto:[EMAIL PROTECTED] / \ / (_/ www : http://programacion.mundivia.es/ryu [ GGL developer ] [ IRCore developer ] [ GPUL member ]