summaryrefslogtreecommitdiffstats
path: root/bundles/org.eclipse.swt/Eclipse SWT Program
diff options
context:
space:
mode:
authorBilly Biggs <bbiggs>2005-11-18 16:49:06 +0000
committerBilly Biggs <bbiggs>2005-11-18 16:49:06 +0000
commit8ff788f6f18586077e9dccb28cf5dc13d4a2a144 (patch)
tree03b8928ab92401b5a6e48e2107ebd9f1ddd91ce5 /bundles/org.eclipse.swt/Eclipse SWT Program
parent937e40a645b0261932fef085efc798531ef4e7bd (diff)
downloadeclipse.platform.swt-8ff788f6f18586077e9dccb28cf5dc13d4a2a144.tar.gz
eclipse.platform.swt-8ff788f6f18586077e9dccb28cf5dc13d4a2a144.tar.xz
eclipse.platform.swt-8ff788f6f18586077e9dccb28cf5dc13d4a2a144.zip
Fix cairo and GNOME loading on Motif based on changes from GTK.
Diffstat (limited to 'bundles/org.eclipse.swt/Eclipse SWT Program')
-rw-r--r--bundles/org.eclipse.swt/Eclipse SWT Program/gnome/org/eclipse/swt/internal/gnome/GNOME.java27
1 files changed, 27 insertions, 0 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT Program/gnome/org/eclipse/swt/internal/gnome/GNOME.java b/bundles/org.eclipse.swt/Eclipse SWT Program/gnome/org/eclipse/swt/internal/gnome/GNOME.java
index 5a7260c59c..c80d736b63 100644
--- a/bundles/org.eclipse.swt/Eclipse SWT Program/gnome/org/eclipse/swt/internal/gnome/GNOME.java
+++ b/bundles/org.eclipse.swt/Eclipse SWT Program/gnome/org/eclipse/swt/internal/gnome/GNOME.java
@@ -31,6 +31,33 @@ public static final int GNOME_VFS_MAKE_URI_DIR_CURRENT = 1<<1;
public static final native int GnomeVFSMimeApplication_sizeof();
/** Natives */
+public static final native int _dlclose(int /*long*/ handle);
+public static final int dlclose(int /*long*/ handle) {
+ lock.lock();
+ try {
+ return _dlclose(handle);
+ } finally {
+ lock.unlock();
+ }
+}
+public static final native int /*long*/ _dlopen(byte[] filename, int flag);
+public static final int /*long*/ dlopen(byte[] filename, int flag) {
+ lock.lock();
+ try {
+ return _dlopen(filename, flag);
+ } finally {
+ lock.unlock();
+ }
+}
+public static final native int /*long*/ _dlsym(int /*long*/ handle, byte[] symbol);
+public static final int /*long*/ dlsym(int /*long*/ handle, byte[] symbol) {
+ lock.lock();
+ try {
+ return _dlsym(handle, symbol);
+ } finally {
+ lock.unlock();
+ }
+}
public static final native void _g_free(int /*long*/ mem);
public static final void g_free(int /*long*/ mem) {
lock.lock();