rpms/imlib/devel imlib-1.9.15-check-for-shm-pixmaps.patch, NONE, 1.1 imlib.spec, 1.9, 1.10

Adam Jackson (ajax) fedora-extras-commits at redhat.com
Wed Nov 28 19:19:18 UTC 2007


Author: ajax

Update of /cvs/pkgs/rpms/imlib/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv17748

Modified Files:
	imlib.spec 
Added Files:
	imlib-1.9.15-check-for-shm-pixmaps.patch 
Log Message:
* Wed Nov 28 2007 Adam Jackson <ajax at redhat.com> 1:1.9.15-5
- imlib-1.9.15-check-for-shm-pixmaps.patch: MIT-SHM pixmaps are optional,
  so check that they exist before using them. (#357241)


imlib-1.9.15-check-for-shm-pixmaps.patch:

--- NEW FILE imlib-1.9.15-check-for-shm-pixmaps.patch ---
diff -up -ru imlib-1.9.15.orig/gdk_imlib/misc.c imlib-1.9.15/gdk_imlib/misc.c
--- imlib-1.9.15.orig/gdk_imlib/misc.c	2002-03-04 18:06:32.000000000 +0100
+++ imlib-1.9.15/gdk_imlib/misc.c	2007-10-28 14:00:04.000000000 +0100
@@ -674,6 +674,10 @@ gdk_imlib_init_params(GdkImlibInitParams
   visual = gdk_rgb_get_visual();
   id->x.visual = GDK_VISUAL_XVISUAL(visual);	/* the visual type */
   id->x.depth = visual->depth;	/* the depth of the screen in bpp */
+
+  id->x.shm = 0;
+  id->x.shmp = 0;
+  id->max_shm = 0;
 #ifdef HAVE_SHM
   if (XShmQueryExtension(id->x.disp))
     {
@@ -689,17 +693,14 @@ gdk_imlib_init_params(GdkImlibInitParams
 	      id->x.last_xim = NULL;
 	      id->x.last_sxim = NULL;
 	      id->max_shm = 0x7fffffff;
-	      if (XShmPixmapFormat(id->x.disp) == ZPixmap)
+	      if ((XShmPixmapFormat(id->x.disp) == ZPixmap) &&
+		  (pm == True))
 		id->x.shmp = 1;
 	    }
 	}
     }
-  else
 #endif
-    {
-      id->x.shm = 0;
-      id->x.shmp = 0;
-    }
+
   id->cache.on_image = 0;
   id->cache.size_image = 0;
   id->cache.num_image = 0;
@@ -935,8 +936,8 @@ gdk_imlib_init_params(GdkImlibInitParams
 	}
       if (p->flags & PARAMS_SHAREDPIXMAPS)
 	{
-	  if (id->x.shm)
-	    id->x.shmp = p->sharedpixmaps;
+	  if (!p->sharedpixmaps)
+	    id->x.shmp = 0;
 	}
       if (p->flags & PARAMS_PALETTEOVERRIDE)
 	override = p->paletteoverride;
diff -up -ru imlib-1.9.15.orig/Imlib/misc.c imlib-1.9.15/Imlib/misc.c
--- imlib-1.9.15.orig/Imlib/misc.c	2004-09-21 02:22:59.000000000 +0200
+++ imlib-1.9.15/Imlib/misc.c	2007-10-28 14:00:23.000000000 +0100
@@ -675,6 +675,10 @@ Imlib_init_with_params(Display * disp, I
   id->x.root = DefaultRootWindow(disp);		/* the root window id */
   id->x.visual = DefaultVisual(disp, id->x.screen);	/* the visual type */
   id->x.depth = DefaultDepth(disp, id->x.screen);	/* the depth of the screen in bpp */
+
+  id->x.shm = 0;
+  id->x.shmp = 0;
+  id->max_shm = 0;
 #ifdef HAVE_SHM
   if (XShmQueryExtension(id->x.disp))
     {
@@ -690,17 +694,14 @@ Imlib_init_with_params(Display * disp, I
 	      id->x.last_xim = NULL;
 	      id->x.last_sxim = NULL;
 	      id->max_shm = 0x7fffffff;
-	      if (XShmPixmapFormat(id->x.disp) == ZPixmap)
+	      if ((XShmPixmapFormat(id->x.disp) == ZPixmap &&
+		   (pm == True)))
 		id->x.shmp = 1;
 	    }
 	}
     }
-  else
 #endif
-    {
-      id->x.shm = 0;
-      id->x.shmp = 0;
-    }
+
   id->cache.on_image = 0;
   id->cache.size_image = 0;
   id->cache.num_image = 0;
@@ -952,8 +953,8 @@ Imlib_init_with_params(Display * disp, I
 	}
       if (p->flags & PARAMS_SHAREDPIXMAPS)
 	{
-	  if (id->x.shm)
-	    id->x.shmp = p->sharedpixmaps;
+	  if (!p->sharedpixmaps)
+	    id->x.shmp = 0;
 	}
       if (p->flags & PARAMS_PALETTEOVERRIDE)
 	override = p->paletteoverride;


Index: imlib.spec
===================================================================
RCS file: /cvs/pkgs/rpms/imlib/devel/imlib.spec,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- imlib.spec	9 Aug 2007 13:11:03 -0000	1.9
+++ imlib.spec	28 Nov 2007 19:18:45 -0000	1.10
@@ -3,7 +3,7 @@
 Summary:	An image loading and rendering library for X11R6
 Name:		imlib
 Version:	1.9.15
-Release:	4%{?dist}
+Release:	5%{?dist}
 Epoch:		1
 License:	LGPLv2+
 Group:		System Environment/Libraries
@@ -16,6 +16,7 @@
 Patch6:		imlib-1.9.13-underquoted.patch
 Patch8:		imlib-1.9.15-lib-bloat.patch
 Patch9:		imlib-1.9.15-multilib-config.patch
+Patch10:	imlib-1.9.15-check-for-shm-pixmaps.patch
 BuildRoot:	%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) 
 BuildRequires:	automake
 BuildRequires:	giflib-devel
@@ -67,6 +68,7 @@
 %patch6 -p1 -b .underquoted
 %patch8 -p1 -b .lib-bloat
 %patch9 -p1 -b .multilib
+%patch10 -p1 -b .shmpixmaps
 
 ## Local gmodule hack to support building with libpng rather than libpng10
 (cd gdk_imlib && %{__tar} zxf %{SOURCE2})
@@ -148,6 +150,10 @@
 %{_mandir}/man1/imlib-config.1*
 
 %changelog
+* Wed Nov 28 2007 Adam Jackson <ajax at redhat.com> 1:1.9.15-5
+- imlib-1.9.15-check-for-shm-pixmaps.patch: MIT-SHM pixmaps are optional,
+  so check that they exist before using them. (#357241)
+
 * Thu Aug  9 2007 Paul Howarth <paul at city-fan.org> 1:1.9.15-4
 - re-clarify license as GNU Lesser General Public License v2 or later (LGPLv2+)
 




More information about the fedora-extras-commits mailing list