[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[cp-patches] remove JamVM workarounds from GTK peers
From: |
Thomas Fitzsimmons |
Subject: |
[cp-patches] remove JamVM workarounds from GTK peers |
Date: |
Wed, 17 Aug 2005 23:16:59 -0400 |
Hi,
I'm removing these workarounds for a JamVM deadlock problem that was
fixed in jamvm-1.3.2.
Tom
2005-08-17 Thomas Fitzsimmons <address@hidden>
* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontPeer.c,
native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkRobotPeer.c,
native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c,
native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkImage.c,
native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkListPeer.c: Remove
JamVM deadlock workarounds.
Index: native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontPeer.c
===================================================================
RCS file:
/cvsroot/classpath/classpath/native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontPeer.c,v
retrieving revision 1.8
diff -u -r1.8 gnu_java_awt_peer_gtk_GdkFontPeer.c
--- native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontPeer.c 14 Jul 2005
22:07:02 -0000 1.8
+++ native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontPeer.c 18 Aug 2005
02:49:46 -0000
@@ -150,12 +150,8 @@
if (i == NULL)
{
- gdk_threads_leave ();
-
java_extents = (*env)->NewDoubleArray (env, 0);
java_codes = (*env)->NewIntArray (env, 0);
-
- gdk_threads_enter ();
}
else
{
@@ -177,12 +173,8 @@
int x = 0;
double scale = ((double) PANGO_SCALE);
- gdk_threads_leave ();
-
java_extents = (*env)->NewDoubleArray (env, glyphs->num_glyphs *
NUM_GLYPH_METRICS);
java_codes = (*env)->NewIntArray (env, glyphs->num_glyphs);
-
- gdk_threads_enter ();
native_extents = (*env)->GetDoubleArrayElements (env, java_extents,
NULL);
native_codes = (*env)->GetIntArrayElements (env, java_codes, NULL);
Index: native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkRobotPeer.c
===================================================================
RCS file:
/cvsroot/classpath/classpath/native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkRobotPeer.c,v
retrieving revision 1.5
diff -u -r1.5 gnu_java_awt_peer_gtk_GdkRobotPeer.c
--- native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkRobotPeer.c 14 Jul 2005
22:07:02 -0000 1.5
+++ native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkRobotPeer.c 18 Aug 2005
02:49:46 -0000
@@ -311,11 +311,7 @@
n_pixels = height * stride_pixels;
gdk_pixels = gdk_pixbuf_get_pixels (pixbuf);
- gdk_threads_leave ();
-
jpixels = (*env)->NewIntArray (env, n_pixels);
-
- gdk_threads_enter ();
java_pixels = (*env)->GetIntArrayElements (env, jpixels, NULL);
Index: native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c
===================================================================
RCS file:
/cvsroot/classpath/classpath/native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c,v
retrieving revision 1.50
diff -u -r1.50 gnu_java_awt_peer_gtk_GtkComponentPeer.c
--- native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c 18 Aug
2005 01:22:00 -0000 1.50
+++ native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c 18 Aug
2005 02:49:46 -0000
@@ -602,12 +602,8 @@
bg = GTK_WIDGET (ptr)->style->bg[GTK_STATE_NORMAL];
- gdk_threads_leave ();
-
array = (*env)->NewIntArray (env, 3);
- gdk_threads_enter ();
-
rgb = (*env)->GetIntArrayElements (env, array, NULL);
/* convert color data from 16 bit values down to 8 bit values */
rgb[0] = bg.red >> 8;
@@ -635,11 +631,7 @@
fg = GTK_WIDGET (ptr)->style->fg[GTK_STATE_NORMAL];
- gdk_threads_leave ();
-
array = (*env)->NewIntArray (env, 3);
-
- gdk_threads_enter ();
rgb = (*env)->GetIntArrayElements (env, array, NULL);
/* convert color data from 16 bit values down to 8 bit values */
Index: native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkImage.c
===================================================================
RCS file:
/cvsroot/classpath/classpath/native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkImage.c,v
retrieving revision 1.12
diff -u -r1.12 gnu_java_awt_peer_gtk_GtkImage.c
--- native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkImage.c 16 Aug 2005
18:16:27 -0000 1.12
+++ native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkImage.c 18 Aug 2005
02:49:46 -0000
@@ -130,14 +130,7 @@
height = gdk_pixbuf_get_height (pixbuf);
rowstride = gdk_pixbuf_get_rowstride (pixbuf);
- /* Must release the GDK lock before allocating memory through the
- JVM, since some JVMs use the same lock for allocations and
- finalization. Deadlock can occur on those JVMs. */
- gdk_threads_leave ();
-
result_array = (*env)->NewIntArray (env, (width * height));
-
- gdk_threads_enter ();
dst = result_array_iter =
(*env)->GetIntArrayElements (env, result_array, NULL);
Index: native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkListPeer.c
===================================================================
RCS file:
/cvsroot/classpath/classpath/native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkListPeer.c,v
retrieving revision 1.21
diff -u -r1.21 gnu_java_awt_peer_gtk_GtkListPeer.c
--- native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkListPeer.c 18 Aug 2005
01:22:00 -0000 1.21
+++ native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkListPeer.c 18 Aug 2005
02:49:46 -0000
@@ -423,11 +423,7 @@
{
current_row = rows = gtk_tree_selection_get_selected_rows (selection,
NULL);
- gdk_threads_leave ();
-
result_array = (*env)->NewIntArray (env, count);
-
- gdk_threads_enter ();
result_array_iter = (*env)->GetIntArrayElements (env, result_array,
NULL);
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [cp-patches] remove JamVM workarounds from GTK peers,
Thomas Fitzsimmons <=