Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTomasz Zarna2008-09-01 09:20:05 +0000
committerTomasz Zarna2008-09-01 09:20:05 +0000
commit1e61bc87c49c33631321294b5311d61c961aae41 (patch)
treee8861ba9344def9004c820fe6cdc31ecdb7930a9
parent3c61001a3a514488f4bdb6839f76ffd8a94d9770 (diff)
downloadeclipse.platform.team-1e61bc87c49c33631321294b5311d61c961aae41.tar.gz
eclipse.platform.team-1e61bc87c49c33631321294b5311d61c961aae41.tar.xz
eclipse.platform.team-1e61bc87c49c33631321294b5311d61c961aae41.zip
bug 232495: [Proxy] Gnome library should not blow up Eclipse w/o Gnome
-rw-r--r--bundles/org.eclipse.core.net/fragments/org.eclipse.core.net.linux.x86/libproxygnome.sobin98887 -> 91287 bytes
-rw-r--r--bundles/org.eclipse.core.net/natives/unix/getproxygnome.c9
-rw-r--r--bundles/org.eclipse.core.net/src/org/eclipse/core/internal/net/proxy/unix/UnixProxyProvider.java14
3 files changed, 11 insertions, 12 deletions
diff --git a/bundles/org.eclipse.core.net/fragments/org.eclipse.core.net.linux.x86/libproxygnome.so b/bundles/org.eclipse.core.net/fragments/org.eclipse.core.net.linux.x86/libproxygnome.so
index 51deca296..f0482426f 100644
--- a/bundles/org.eclipse.core.net/fragments/org.eclipse.core.net.linux.x86/libproxygnome.so
+++ b/bundles/org.eclipse.core.net/fragments/org.eclipse.core.net.linux.x86/libproxygnome.so
Binary files differ
diff --git a/bundles/org.eclipse.core.net/natives/unix/getproxygnome.c b/bundles/org.eclipse.core.net/natives/unix/getproxygnome.c
index 1444fb34c..1811952bf 100644
--- a/bundles/org.eclipse.core.net/natives/unix/getproxygnome.c
+++ b/bundles/org.eclipse.core.net/natives/unix/getproxygnome.c
@@ -7,6 +7,7 @@
*
* Contributors:
* Oakland Software Incorporated - initial API and implementation
+ * IBM Corporation - enabling JNI calls for gconfInit method (bug 232495)
*/
#include <jni.h>
@@ -36,7 +37,9 @@ static jmethodID passwordMethod;
#define CHECK_NULL(X) { if ((X) == NULL) fprintf (stderr,"JNI error at line %d\n", __LINE__); }
-static void gconfInit(JNIEnv *env) {
+JNIEXPORT void JNICALL Java_org_eclipse_core_internal_net_proxy_unix_UnixProxyProvider_gconfInit(
+ JNIEnv *env, jclass clazz) {
+
client = gconf_client_get_default();
jclass cls= NULL;
CHECK_NULL(cls = (*env)->FindClass(env, "org/eclipse/core/internal/net/ProxyData"));
@@ -73,7 +76,7 @@ JNIEXPORT jobject JNICALL Java_org_eclipse_core_internal_net_proxy_unix_UnixProx
jobject proxyInfo= NULL;
if (client == NULL) {
- gconfInit(env);
+ Java_org_eclipse_core_internal_net_proxy_unix_UnixProxyProvider_gconfInit(env, clazz);
}
CHECK_NULL(proxyInfo = (*env)->NewObject(env, proxyInfoClass, proxyInfoConstructor, protocol));
@@ -183,7 +186,7 @@ JNIEXPORT jobjectArray JNICALL Java_org_eclipse_core_internal_net_proxy_unix_Uni
JNIEnv *env, jclass clazz) {
if (client == NULL) {
- gconfInit(env);
+ Java_org_eclipse_core_internal_net_proxy_unix_UnixProxyProvider_gconfInit(env, clazz);
}
GSList *npHosts;
diff --git a/bundles/org.eclipse.core.net/src/org/eclipse/core/internal/net/proxy/unix/UnixProxyProvider.java b/bundles/org.eclipse.core.net/src/org/eclipse/core/internal/net/proxy/unix/UnixProxyProvider.java
index c33a6aedb..f4af5bb9b 100644
--- a/bundles/org.eclipse.core.net/src/org/eclipse/core/internal/net/proxy/unix/UnixProxyProvider.java
+++ b/bundles/org.eclipse.core.net/src/org/eclipse/core/internal/net/proxy/unix/UnixProxyProvider.java
@@ -23,11 +23,10 @@ import org.eclipse.core.internal.net.ProxyData;
import org.eclipse.core.net.proxy.IProxyData;
public class UnixProxyProvider extends AbstractProxyProvider {
-
- // Gnome support disabled - see bug 234662
- // private static final String LIBRARY_GCONF2 = "gconf-2"; //$NON-NLS-1$
- // private static final String LIBRARY_NAME = "proxygnome"; //$NON-NLS-1$
+ private static final String LIBRARY_GCONF2 = "gconf-2"; //$NON-NLS-1$
+
+ private static final String LIBRARY_NAME = "proxygnome"; //$NON-NLS-1$
private static boolean isGnomeLibLoaded = false;
@@ -35,8 +34,7 @@ public class UnixProxyProvider extends AbstractProxyProvider {
// We have to load this here otherwise gconf seems to have problems
// causing hangs and various other bad behavior,
// please don't move this to be initialized on another thread.
- // Gnome support disabled - see bug 234662
- // loadGnomeLib();
+ loadGnomeLib();
}
public UnixProxyProvider() {
@@ -167,8 +165,6 @@ public class UnixProxyProvider extends AbstractProxyProvider {
return props.getProperty(env);
}
- // Gnome support disabled - see bug 234662
- /*
private static void loadGnomeLib() {
try {
System.loadLibrary(LIBRARY_GCONF2);
@@ -194,7 +190,7 @@ public class UnixProxyProvider extends AbstractProxyProvider {
+ System.mapLibraryName(LIBRARY_NAME));
}
}
- */
+
private void debugPrint(String[] strs) {
for (int i = 0; i < strs.length; i++)

Back to the top