aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Fitzsimmons <fitzsim@gcc.gnu.org>2005-05-03 23:53:27 +0000
committerThomas Fitzsimmons <fitzsim@gcc.gnu.org>2005-05-03 23:53:27 +0000
commit9247d229f65bc56a6fc285e0341eff74a830af76 (patch)
treea10fd01b9f72f7f247874cf6a02f8ec3e7752463
parentf525d7a75ffa9e02d094828e91b2c8af49272e61 (diff)
downloadgcc-9247d229f65bc56a6fc285e0341eff74a830af76.zip
gcc-9247d229f65bc56a6fc285e0341eff74a830af76.tar.gz
gcc-9247d229f65bc56a6fc285e0341eff74a830af76.tar.bz2
2005-05-03 Thomas Fitzsimmons <fitzsim@redhat.com>
* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkToolkit.c (init_glib_threads): Check if threading system is already initialized. From-SVN: r99196
-rw-r--r--libjava/ChangeLog7
-rw-r--r--libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkToolkit.c18
2 files changed, 22 insertions, 3 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index 17a07fd..298d288 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,3 +1,9 @@
+2005-05-03 Thomas Fitzsimmons <fitzsim@redhat.com>
+
+ * jni/gtk-peer/gnu_java_awt_peer_gtk_GtkToolkit.c
+ (init_glib_threads): Check if threading system is already
+ initialized.
+
2005-05-03 Andrew Overholt <overholt@redhat.com>
PR libgcj/21372:
@@ -136,6 +142,7 @@
* gnu/java/net/protocol/file/Connection.java
(lineSeparator): Initialize with SystemProperties.getProperty().
+>>>>>>> 1.3571
2005-04-27 Chris Burdess <dog@gnu.org>
* gnu/java/net/protocol/file/Connection.java: Return correct content
diff --git a/libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkToolkit.c b/libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkToolkit.c
index 8cb9e2f..bb31233 100644
--- a/libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkToolkit.c
+++ b/libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkToolkit.c
@@ -275,10 +275,22 @@ init_glib_threads(JNIEnv *env, jint portableNativeSync)
}
(*env)->GetJavaVM( env, &the_vm );
- if (portableNativeSync)
- g_thread_init ( &portable_native_sync_jni_functions );
+ if (!g_thread_supported ())
+ {
+ if (portableNativeSync)
+ g_thread_init ( &portable_native_sync_jni_functions );
+ else
+ g_thread_init ( NULL );
+ }
else
- g_thread_init ( NULL );
+ {
+ /* Warn if portable native sync is desired but the threading
+ system is already initialized. In that case we can't
+ override the threading implementation with our portable
+ native sync functions. */
+ if (portableNativeSync)
+ g_printerr ("peer warning: portable native sync disabled.\n");
+ }
/* Debugging progress message; uncomment if needed: */
/* printf("called gthread init\n"); */