I've attched two patches for gtk-directfb.
gtk-dfb_strdup_atom_name.patch makes gdk_atom_name() use g_strdup().
Fixes crashes due to double free/freeing static data.
gtk-dfb_init_failure_cleanup.patch is just a minor cleanup to
gdk_display_open() failure paths.
Mike, what's the policy regarding gtk-directfb patches, should they be
sent to directfb-dev or gtk-devel?
--
Ville Syrjälä
[EMAIL PROTECTED]
http://www.sci.fi/~syrjala/
Index: gdk/directfb/gdkproperty-directfb.c
===================================================================
RCS file: /cvs/gnome/gtk+/gdk/directfb/gdkproperty-directfb.c,v
retrieving revision 1.1
diff -u -r1.1 gdkproperty-directfb.c
--- gdk/directfb/gdkproperty-directfb.c 5 Feb 2006 04:04:28 -0000 1.1
+++ gdk/directfb/gdkproperty-directfb.c 24 Apr 2006 10:17:39 -0000
@@ -192,7 +192,7 @@
if (GPOINTER_TO_INT (atom) >= atoms_to_names->len)
return NULL;
- return g_ptr_array_index (atoms_to_names, GPOINTER_TO_INT (atom));
+ return g_strdup (g_ptr_array_index (atoms_to_names, GPOINTER_TO_INT (atom)));
}
Index: gdk/directfb/gdkdisplay-directfb.c
===================================================================
RCS file: /cvs/gnome/gtk+/gdk/directfb/gdkdisplay-directfb.c,v
retrieving revision 1.3
diff -u -r1.3 gdkdisplay-directfb.c
--- gdk/directfb/gdkdisplay-directfb.c 3 Apr 2006 20:36:51 -0000 1.3
+++ gdk/directfb/gdkdisplay-directfb.c 24 Apr 2006 10:17:39 -0000
@@ -111,7 +111,6 @@
{
DirectFBError ("gdk_display_open: GetDisplayLayer", ret);
directfb->Release (directfb);
- directfb = NULL;
return NULL;
}
@@ -120,7 +119,9 @@
ret=directfb->GetInputDevice (directfb, DIDID_KEYBOARD, &keyboard);
if (ret != DFB_OK){
- DirectFBError ("gdk_display_open: GetDisplayLayer", ret);
+ DirectFBError ("gdk_display_open: GetInputDevice", ret);
+ layer->Release (layer);
+ directfb->Release (directfb);
return NULL;
}
_______________________________________________
directfb-dev mailing list
[email protected]
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev