[gtk+/gtk-2-24] Bug 681784 Colorspaces used in gtk+ and cairo quartz backends do not match



commit 48547aadef8547686ae43cb317caeb882ecc2699
Author: John Ralls <jralls ceridwen us>
Date:   Tue Aug 21 16:21:28 2012 -0700

    Bug 681784 Colorspaces used in gtk+ and cairo quartz backends do not
    match
    
    Changes inspired by parafin <help imtrappedininternet com>
    Replace colorspace creation calls to match those used by Cairo.

 gdk/quartz/gdkcolor-quartz.c    |    2 +-
 gdk/quartz/gdkdrawable-quartz.c |    4 ++--
 gdk/quartz/gdkgc-quartz.c       |    2 +-
 gdk/quartz/gdkpixmap-quartz.c   |    4 ++--
 4 files changed, 6 insertions(+), 6 deletions(-)
---
diff --git a/gdk/quartz/gdkcolor-quartz.c b/gdk/quartz/gdkcolor-quartz.c
index fb5eb8a..2ef0427 100644
--- a/gdk/quartz/gdkcolor-quartz.c
+++ b/gdk/quartz/gdkcolor-quartz.c
@@ -237,7 +237,7 @@ _gdk_quartz_colormap_get_cgcolor_from_pixel (GdkDrawable *drawable,
         else
           components[3] = 1.0;
 
-        colorspace = CGColorSpaceCreateWithName (kCGColorSpaceGenericRGB);
+        colorspace = CGColorSpaceCreateDeviceRGB ();
         color = CGColorCreate (colorspace, components);
         CGColorSpaceRelease (colorspace);
         break;
diff --git a/gdk/quartz/gdkdrawable-quartz.c b/gdk/quartz/gdkdrawable-quartz.c
index 3458f1d..ac4887a 100644
--- a/gdk/quartz/gdkdrawable-quartz.c
+++ b/gdk/quartz/gdkdrawable-quartz.c
@@ -586,7 +586,7 @@ gdk_quartz_draw_pixbuf (GdkDrawable     *drawable,
 
   data = gdk_pixbuf_get_pixels (pixbuf);
 
-  colorspace = CGColorSpaceCreateWithName (kCGColorSpaceGenericRGB);
+  colorspace = CGColorSpaceCreateDeviceRGB ();
   data_provider = CGDataProviderCreateWithData (NULL, data, pixbuf_height * rowstride, NULL);
 
   image = CGImageCreate (pixbuf_width, pixbuf_height, 8,
@@ -634,7 +634,7 @@ gdk_quartz_draw_image (GdkDrawable     *drawable,
   if (!context)
     return;
 
-  colorspace = CGColorSpaceCreateWithName (kCGColorSpaceGenericRGB);
+  colorspace = CGColorSpaceCreateDeviceRGB ();
   data_provider = CGDataProviderCreateWithData (NULL, image->mem, image->height * image->bpl, NULL);
 
   /* FIXME: Make sure that this function draws 32-bit images correctly,
diff --git a/gdk/quartz/gdkgc-quartz.c b/gdk/quartz/gdkgc-quartz.c
index cfdde77..d54ad52 100644
--- a/gdk/quartz/gdkgc-quartz.c
+++ b/gdk/quartz/gdkgc-quartz.c
@@ -684,7 +684,7 @@ _gdk_quartz_gc_update_cg_context (GdkGC                      *gc,
            */
           info->drawable = drawable;
 
-	  baseSpace = (fill == GDK_STIPPLED) ? CGColorSpaceCreateWithName (kCGColorSpaceGenericRGB) : NULL;
+	  baseSpace = (fill == GDK_STIPPLED) ? CGColorSpaceCreateDeviceRGB () : NULL;
 	  patternSpace = CGColorSpaceCreatePattern (baseSpace);
 
 	  CGContextSetFillColorSpace (context, patternSpace);
diff --git a/gdk/quartz/gdkpixmap-quartz.c b/gdk/quartz/gdkpixmap-quartz.c
index 5b89a22..b7dcc88 100644
--- a/gdk/quartz/gdkpixmap-quartz.c
+++ b/gdk/quartz/gdkpixmap-quartz.c
@@ -65,7 +65,7 @@ gdk_pixmap_impl_quartz_get_image_parameters (GdkPixmap           *pixmap,
           *bytes_per_row = impl->width * 4;
 
         if (colorspace)
-          *colorspace = CGColorSpaceCreateWithName (kCGColorSpaceGenericRGB);
+          *colorspace = CGColorSpaceCreateDeviceRGB ();
 
         if (alpha_info)
           *alpha_info = kCGImageAlphaNoneSkipLast;
@@ -82,7 +82,7 @@ gdk_pixmap_impl_quartz_get_image_parameters (GdkPixmap           *pixmap,
           *bytes_per_row = impl->width * 4;
 
         if (colorspace)
-          *colorspace = CGColorSpaceCreateWithName (kCGColorSpaceGenericRGB);
+          *colorspace = CGColorSpaceCreateDeviceRGB ();
 
         if (alpha_info)
           *alpha_info = kCGImageAlphaPremultipliedFirst;



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]