This fixes the segmentation fault that Norman has been encountering with
several of his programs. Fixes bug #24211

2006-03-15  Lillian Angel  <[EMAIL PROTECTED]>

        PR classpath/24211
        * native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c
(Java_gnu_java_awt_peer_gtk_GdkGraphics2D_cairoSurfaceSetFilterUnlocked):
        Added check to avoid segmentation fault.

Index: native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c
===================================================================
RCS file: /sources/classpath/classpath/native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c,v
retrieving revision 1.37
diff -u -r1.37 gnu_java_awt_peer_gtk_GdkGraphics2D.c
--- native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c	20 Feb 2006 22:44:04 -0000	1.37
+++ native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c	15 Mar 2006 20:13:53 -0000
@@ -1992,6 +1992,10 @@
 
   gr = (struct graphics2d *) NSA_GET_G2D_PTR (env, obj);
   g_assert (gr != NULL);
+  
+  if (gr->pattern == NULL)
+    return;
+  
   if (gr->debug) printf ("cairo_pattern_set_filter %d\n", filter);
   switch ((enum java_awt_rendering_hints_filter) filter)
     {

Reply via email to