classpath-patches
[Top][All Lists]
Advanced

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

[cp-patches] [patch] fix for GdkGraphics2D segfaults


From: Thomas Fitzsimmons
Subject: [cp-patches] [patch] fix for GdkGraphics2D segfaults
Date: Thu, 09 Jun 2005 18:35:32 -0400

Hi,

I was getting segfaults in GdkGraphics2D when referencing null pattern
field.  I committed this fix.

Tom

2005-06-09  Thomas Fitzsimmons  <address@hidden>

        * native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c
        (copyState): Check if cairo pattern is null before copying it.
        (drawPixels): Check if cairo pattern is null before retrieving it.

Index: native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c
===================================================================
RCS
file: 
/cvsroot/classpath/classpath/native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c,v
retrieving revision 1.23
diff -u -r1.23 gnu_java_awt_peer_gtk_GdkGraphics2D.c
--- native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c   8 Jun 2005
21:19:25 -0000  1.23
+++ native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c   9 Jun 2005
22:32:52 -0000
@@ -403,7 +403,8 @@
        init_graphics2d_as_pixbuf (g);
     }
 
-  cairo_pattern_set_filter (g->pattern, CAIRO_FILTER_FAST);
+  if (g->pattern)
+    cairo_pattern_set_filter (g->pattern, CAIRO_FILTER_FAST);
 
   NSA_SET_G2D_PTR (env, obj, g);
   gdk_threads_leave();
@@ -826,7 +827,8 @@
 
    p = cairo_pattern_create_for_surface (surf);
    cairo_pattern_set_matrix (p, &mat);
-   cairo_pattern_set_filter (p, cairo_pattern_get_filter
(gr->pattern));
+   if (gr->pattern)
+     cairo_pattern_set_filter (p, cairo_pattern_get_filter
(gr->pattern));
    cairo_set_source_surface (gr->cr, surf, w, h);
    cairo_paint (gr->cr);
    cairo_surface_destroy (surf);






reply via email to

[Prev in Thread] Current Thread [Next in Thread]