Memory leaks
- From: John Emmas <johne53 tiscali co uk>
- To: gtk-app-devel-list <gtk-app-devel-list gnome org>
- Subject: Memory leaks
- Date: Tue, 8 Feb 2011 09:36:21 +0000
Strictly speaking I'm talking about a gtkmm app but since gtkmm is mostly just a wrapper around gtk+ maybe I
should start here.
Some time ago I built a small gtkmm app using gtk-win32 and Microsoft Visual C++. MSVC has some pretty
sophisticated leak detection tools and in the past, I've tended to turn them on for my MSVC builds. So a
week or two ago I enabled leak detection for my gtkmm app and was a bit disappointed at how much memory was
leaking.
At first I assumed the leaks would be my fault but a week of inspecting my code revealed nothing. Eventually
I boiled the situation down to the following minimal code sample:-
#include <gtkmm.h>
int main (int argc, char *argv[])
{
Gtk::Main *app = new Gtk::Main (&argc, &argv);
delete app;
return 0;
}
The above code causes hundreds of memory leaks. I'd be happy to try and trace them but I know that gtk+ has
been built by better programmers than me - so if memory is leaking (certainly on this scale) it's probably
for a good reason. This code results in identical leaks:-
#include <gtkmm.h>
int main (int argc, char *argv[])
{
Gtk::Main app(&argc, &argv);
return 0;
}
In both cases, not creating the Gtk::Main object completely eliminates the memory leaks, so I can be
reasonably confident they're coming from gtk+ or gtkmm. If this comes as a big surprise to the gtk+
developers I'd be happy to take a closer look but I figured there might be some reason for the leaks that's
already obvious to the development team but not to me. I don't want to waste too much time on this if it's
expected behaviour.
John
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]