Make themes usable, and allow the use of shared pixmaps with imlib.

From maintainer Nils Nordman <nino@nforced.com>.
This commit is contained in:
naddy 2001-10-09 16:03:18 +00:00
parent 85b46d13a6
commit d30e8fc4a8

View File

@ -1,6 +1,6 @@
$OpenBSD: patch-libgnomeui_gnome-init_c,v 1.2 2001/10/04 22:19:18 naddy Exp $
$OpenBSD: patch-libgnomeui_gnome-init_c,v 1.3 2001/10/09 16:03:18 naddy Exp $
--- libgnomeui/gnome-init.c.orig Fri Feb 16 05:22:29 2001
+++ libgnomeui/gnome-init.c Thu Oct 4 22:07:40 2001
+++ libgnomeui/gnome-init.c Mon Oct 8 22:45:35 2001
@@ -205,32 +205,11 @@ gnome_init_cb(poptContext ctx, enum popt
switch(reason) {
case POPT_CALLBACK_REASON_PRE:
@ -35,3 +35,35 @@ $OpenBSD: patch-libgnomeui_gnome-init_c,v 1.2 2001/10/04 22:19:18 naddy Exp $
client = gnome_master_client();
}
break;
@@ -686,12 +665,25 @@ imlib_image_loader(GdkWindow *window,
GdkColor *transparent_color,
const gchar *filename)
{
- GdkPixmap *retval;
-
- if (gdk_imlib_load_file_to_pixmap ((char *) filename, &retval, mask))
- return retval;
- else
- return NULL;
+ GdkPixmap *retval;
+
+ if (gdk_imlib_load_file_to_pixmap ((char *) filename, &retval, mask)) {
+ if (retval) {
+ if (mask && *mask)
+ gdk_pixmap_ref (*mask);
+ gdk_pixmap_ref (retval);
+ gdk_imlib_free_pixmap (retval);
+ } else {
+ /* Paranoia */
+ if (mask && *mask) {
+ gdk_imlib_free_pixmap (*mask);
+ *mask = NULL;
+ }
+ }
+ return retval;
+ }
+ else
+ return NULL;
}
static gboolean