Iulian wrote: > > I have GTK over DirectFB on a linux platform. > I have a simple GTK application with only one window at which i connected > "destroy" signal on which i call gtk_main_quit(). > I've installed signal handlers for SIGINT and SIGTERM > When i catch one of these signals i call > gtk_widget_destroy(GTK_WIDGET(main_window)); > > Unfortunatelly the application doesn't close gracefully (it doesn't > clean-up DirectFB) and i got: > (!!!) *** WARNING [Application exited without deinitialization of > DirectFB!] *** [core.c:859 in dfb_core_deinit_check()] > (!!!) *** WARNING [still objects in 'Window Pool'] *** [object.c:241 in > fusion_object_pool_destroy()] > (!!!) *** WARNING [still objects in 'Layer Region Pool'] *** > [object.c:241 in fusion_object_pool_destroy()] > (!!!) *** WARNING [still objects in 'Layer Context Pool'] *** > [object.c:241 in fusion_object_pool_destroy()] > (!!!) *** WARNING [still objects in 'Surface Pool'] *** [object.c:241 in > fusion_object_pool_destroy()] > Interface instances remaining (8): > - 'IDirectFB' at 0x229ec00 (dfb) allocated in DirectFBCreate > (directfb.c: 197) > - 'IDirectFBDisplayLayer' at 0x22a1400 (*context->interface) allocated > in GetDisplayLayer_Callback (idirectfb.c: 1810) > - 'IDirectFBInputDevice' at 0x22a14a8 (*context->interface) allocated in > GetInputDevice_Callback (idirectfb.c: 1838) > - 'IDirectFBSurface' at 0x22a6930 (iface) allocated in > IDirectFB_CreateSurface (idirectfb.c: 819) > - 'IDirectFBWindow' at 0x22a7080 (*window) allocated in > IDirectFBDisplayLayer_CreateWindow (idirectfbdisplaylayer.c: 670) > - 'IDirectFBSurface' at 0x22a7158 (*surface) allocated in > IDirectFBWindow_GetSurface (idirectfbwindow.c: 354) > - 'IDirectFBEventBuffer' at 0x22a7570 (iface) allocated in > IDirectFB_CreateEventBuffer (idirectfb.c: 1048) > - 'IDirectFBSurface' at 0x22b8b40 (iface) allocated in > IDirectFB_CreateSurface (idirectfb.c: 819) > > > What is the problem? > What is the proper way to terminate a GTK application? > I have the same problem like your , and i hack the gdk/directfb code , add this code when the program exit: GdkDisplayDFB *_display = GDK_DISPLAY_DFB(gdk_display_get_default()); _display->buffer->Release(_display->buffer); _display->layer->Release(_display->layer); _display->directfb->Release(_display->directfb); Unfortunatelly also has the warning like: (!!!) *** WARNING [still 1 objects in pool:'Window Pool'] *** [object.c:359 in fusion_object_pool_destroy()] (!!!) *** WARNING [still 4 objects in pool:'Surface Pool'] *** [object.c:359 in fusion_object_pool_destroy()] -- View this message in context: http://old.nabble.com/GTK-DirectFB-clean-up-problems-tp22207061p26976060.html Sent from the Gtk+ - General mailing list archive at Nabble.com. _______________________________________________ gtk-list mailing list gtk-list@xxxxxxxxx http://mail.gnome.org/mailman/listinfo/gtk-list