Hi Andreas,

would you please try this patch on your platform and commit it if it works?

Thanks,
Tom

2006-05-30  Thomas Fitzsimmons  <[EMAIL PROTECTED]>

        * configure.ac: Check for libXrender when the GTK peers are
        enabled, and set HAVE_XRENDER accordingly.
        * native/jni/gtk-peer/gnu_java_awt_peer_gtk_ComponentGraphics.c
        (Java_gnu_java_awt_peer_gtk_ComponentGraphics_hasXRender)
        [HAVE_XRENDER]: Call XRenderQueryExtension conditionally.
Index: configure.ac
===================================================================
RCS file: /sources/classpath/classpath/configure.ac,v
retrieving revision 1.153
diff -u -r1.153 configure.ac
--- configure.ac	27 May 2006 21:10:46 -0000	1.153
+++ configure.ac	30 May 2006 13:01:13 -0000
@@ -406,6 +406,12 @@
     PKG_CHECK_MODULES(GTK, gtk+-2.0 >= 2.8 gthread-2.0 >= 2.2 gdk-pixbuf-2.0)
     PKG_CHECK_MODULES(FREETYPE2, freetype2)
     PKG_CHECK_MODULES(PANGOFT2, pangoft2)
+    dnl Check if we can link against the XRender library and set
+    dnl HAVE_XRENDER accordingly.
+    AC_CHECK_LIB([Xrender], [XRenderQueryExtension],
+		 [AC_DEFINE(HAVE_XRENDER, 1, [Define to 1 if you have libXrender.])],
+		 [true],
+		 [${X_LIBS}])
 
     AC_SUBST(GTK_CFLAGS)
     AC_SUBST(GTK_LIBS)
Index: native/jni/gtk-peer/gnu_java_awt_peer_gtk_ComponentGraphics.c
===================================================================
RCS file: /sources/classpath/classpath/native/jni/gtk-peer/gnu_java_awt_peer_gtk_ComponentGraphics.c,v
retrieving revision 1.4
diff -u -r1.4 gnu_java_awt_peer_gtk_ComponentGraphics.c
--- native/jni/gtk-peer/gnu_java_awt_peer_gtk_ComponentGraphics.c	30 May 2006 11:30:02 -0000	1.4
+++ native/jni/gtk-peer/gnu_java_awt_peer_gtk_ComponentGraphics.c	30 May 2006 13:01:15 -0000
@@ -78,9 +78,11 @@
 Java_gnu_java_awt_peer_gtk_ComponentGraphics_hasXRender
   (JNIEnv *env __attribute__ ((unused)), jclass cls __attribute__ ((unused)))
 { 
+#if HAVE_XRENDER
   int ev = 0, err = 0; 
   if( XRenderQueryExtension (GDK_DISPLAY (), &ev, &err) )
     return JNI_TRUE;
+#endif
   return JNI_FALSE;
 }
 

Reply via email to