diff --git a/eclipse-swt-firefox.patch b/eclipse-swt-firefox.patch index e011736..1c1393e 100644 --- a/eclipse-swt-firefox.patch +++ b/eclipse-swt-firefox.patch @@ -1,54 +1,116 @@ +### Eclipse Workspace Patch 1.0 +#P org.eclipse.swt +Index: Eclipse_SWT_PI/gtk/library/make_linux.mak +=================================================================== +RCS file: /cvsroot/eclipse/org.eclipse.swt/Eclipse_SWT_PI/gtk/library/make_linux.mak,v +retrieving revision 1.33.2.1 +diff -u -r1.33.2.1 make_linux.mak +--- Eclipse_SWT_PI/gtk/library/make_linux.mak 26 Jul 2006 16:33:23 -0000 1.33.2.1 ++++ Eclipse_SWT_PI/gtk/library/make_linux.mak 28 Sep 2006 20:15:54 -0000 +@@ -202,7 +202,7 @@ + # + # Mozilla lib + # +-make_mozilla:$(MOZILLA_LIB) $(PROFILE14_LIB) $(PROFILE17_LIB) $(PROFILE18_LIB) ++make_mozilla:$(MOZILLA_LIB) $(PROFILE17_LIB) + + $(MOZILLA_LIB): $(MOZILLA_OBJECTS) + $(CXX) -o $(MOZILLA_LIB) $(MOZILLA_OBJECTS) $(MOZILLALIBS) ${GECKO_LIBS} +@@ -220,22 +220,22 @@ + $(CXX) $(MOZILLACFLAGS) ${GECKO_INCLUDES} -c xpcom_stats.cpp + + $(PROFILE14_OBJECTS): xpcom_profile.cpp +- $(CXX) -o $(PROFILE14_OBJECTS) $(MOZILLACFLAGS) ${PROFILE14_INCLUDES} -c xpcom_profile.cpp ++ $(CXX) -o $(PROFILE14_OBJECTS) $(MOZILLACFLAGS) ${PROFILE14_INCLUDES} ${GECKO_INCLUDES} -c xpcom_profile.cpp + + $(PROFILE17_OBJECTS): xpcom_profile.cpp +- $(CXX) -o $(PROFILE17_OBJECTS) $(MOZILLACFLAGS) ${PROFILE17_INCLUDES} -c xpcom_profile.cpp ++ $(CXX) -o $(PROFILE17_OBJECTS) $(MOZILLACFLAGS) ${PROFILE17_INCLUDES} ${GECKO_INCLUDES} -c xpcom_profile.cpp + + $(PROFILE18_OBJECTS): xpcom_profile.cpp +- $(CXX) -o $(PROFILE18_OBJECTS) $(MOZILLACFLAGS) ${PROFILE18_INCLUDES} -c xpcom_profile.cpp ++ $(CXX) -o $(PROFILE18_OBJECTS) $(MOZILLACFLAGS) ${PROFILE18_INCLUDES} ${GECKO_INCLUDES} -c xpcom_profile.cpp + + $(PROFILE14_LIB): $(PROFILE14_OBJECTS) +- $(CXX) -o $(PROFILE14_LIB) $(PROFILE14_OBJECTS) $(MOZILLALIBS) ${PROFILE14_LIBS} ++ $(CXX) -o $(PROFILE14_LIB) $(PROFILE14_OBJECTS) $(MOZILLALIBS) ${PROFILE14_LIBS} ${GECKO_LIBS} + + $(PROFILE17_LIB): $(PROFILE17_OBJECTS) +- $(CXX) -o $(PROFILE17_LIB) $(PROFILE17_OBJECTS) $(MOZILLALIBS) ${PROFILE17_LIBS} ++ $(CXX) -o $(PROFILE17_LIB) $(PROFILE17_OBJECTS) $(MOZILLALIBS) ${PROFILE17_LIBS} ${GECKO_LIBS} + + $(PROFILE18_LIB): $(PROFILE18_OBJECTS) +- $(CXX) -o $(PROFILE18_LIB) $(PROFILE18_OBJECTS) $(MOZILLALIBS) ${PROFILE18_LIBS} ++ $(CXX) -o $(PROFILE18_LIB) $(PROFILE18_OBJECTS) $(MOZILLALIBS) ${PROFILE18_LIBS} ${GECKO_LIBS} + + # + # GLX lib +@@ -264,4 +264,4 @@ + # Clean + # + clean: +- rm -f *.o *.so ++ rm -f *.o *.so +\ No newline at end of file +Index: Eclipse_SWT_PI/gtk/library/build.sh +=================================================================== +RCS file: /cvsroot/eclipse/org.eclipse.swt/Eclipse_SWT_PI/gtk/library/build.sh,v +retrieving revision 1.40 +diff -u -r1.40 build.sh +--- Eclipse_SWT_PI/gtk/library/build.sh 22 Nov 2005 04:48:15 -0000 1.40 ++++ Eclipse_SWT_PI/gtk/library/build.sh 28 Sep 2006 20:15:54 -0000 +@@ -87,9 +87,9 @@ + fi + + if [ -z "${GECKO_INCLUDES}" -a -z "${GECKO_LIBS}" ]; then +- if [ x`pkg-config --exists mozilla-xpcom && echo YES` = "xYES" ]; then +- GECKO_INCLUDES=`pkg-config --cflags mozilla-xpcom` +- GECKO_LIBS=`pkg-config --libs mozilla-xpcom` ++ if [ x`pkg-config --exists firefox-xpcom && echo YES` = "xYES" ]; then ++ GECKO_INCLUDES=`pkg-config --cflags firefox-xpcom` ++ GECKO_LIBS=`pkg-config --libs firefox-xpcom` + export GECKO_INCLUDES + export GECKO_LIBS + MAKE_MOZILLA=make_mozilla Index: Eclipse_SWT_Mozilla/common/library/xpcom_stats.cpp =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.swt/Eclipse_SWT_Mozilla/common/library/xpcom_stats.cpp,v -retrieving revision 1.15 -diff -u -r1.15 xpcom_stats.cpp ---- plugins/org.eclipse.swt/Eclipse_SWT_Mozilla/common/library/xpcom_stats.cpp 9 May 2006 21:52:54 -0000 1.15 -+++ plugins/org.eclipse.swt/Eclipse_SWT_Mozilla/common/library/xpcom_stats.cpp 15 Sep 2006 19:04:09 -0000 -@@ -31,15 +31,14 @@ - - #ifdef NATIVE_STATS - --int XPCOM_nativeFunctionCount = 132; --int XPCOM_nativeFunctionCallCount[132]; -+int XPCOM_nativeFunctionCount = 131; -+int XPCOM_nativeFunctionCallCount[131]; - char * XPCOM_nativeFunctionNames[] = { +retrieving revision 1.15.2.1 +diff -u -r1.15.2.1 xpcom_stats.cpp +--- Eclipse_SWT_Mozilla/common/library/xpcom_stats.cpp 26 Jul 2006 16:33:23 -0000 1.15.2.1 ++++ Eclipse_SWT_Mozilla/common/library/xpcom_stats.cpp 28 Sep 2006 20:15:53 -0000 +@@ -37,7 +37,7 @@ "Call", "NS_1GetComponentManager", "NS_1GetServiceManager", - "NS_1InitEmbedding", + "NS_1InitXPCOM3_FUNC", "NS_1NewLocalFile", -- "NS_1TermEmbedding", + "NS_1TermEmbedding", "PR_1Free", - "PR_1Malloc", - "VtblCall__II", -Index: Eclipse_SWT_Mozilla/common/library/xpcom_stats.h +Index: Eclipse_SWT_Mozilla/common/library/xpcom_profile.h =================================================================== -RCS file: /cvsroot/eclipse/org.eclipse.swt/Eclipse_SWT_Mozilla/common/library/xpcom_stats.h,v -retrieving revision 1.14 -diff -u -r1.14 xpcom_stats.h ---- plugins/org.eclipse.swt/Eclipse_SWT_Mozilla/common/library/xpcom_stats.h 9 May 2006 21:52:54 -0000 1.14 -+++ plugins/org.eclipse.swt/Eclipse_SWT_Mozilla/common/library/xpcom_stats.h 15 Sep 2006 19:04:09 -0000 -@@ -41,9 +41,8 @@ - Call_FUNC, - NS_1GetComponentManager_FUNC, - NS_1GetServiceManager_FUNC, -- NS_1InitEmbedding_FUNC, -+ NS_1InitXPCOM3_FUNC, - NS_1NewLocalFile_FUNC, -- NS_1TermEmbedding_FUNC, - PR_1Free_FUNC, - PR_1Malloc_FUNC, - VtblCall__II_FUNC, +RCS file: /cvsroot/eclipse/org.eclipse.swt/Eclipse_SWT_Mozilla/common/library/xpcom_profile.h,v +retrieving revision 1.1.2.1 +diff -u -r1.1.2.1 xpcom_profile.h +--- Eclipse_SWT_Mozilla/common/library/xpcom_profile.h 26 Jul 2006 16:33:23 -0000 1.1.2.1 ++++ Eclipse_SWT_Mozilla/common/library/xpcom_profile.h 28 Sep 2006 20:15:53 -0000 +@@ -32,7 +32,7 @@ + #define NDEBUG + + #include "nsCOMPtr.h" +-#include "nsProfileDirServiceProvider.h" ++#include "profdirserviceprovider/nsProfileDirServiceProvider.h" + #include "xpcom_stats.h" + + #endif /* INC_xpcom_profile_H */ Index: Eclipse_SWT_Mozilla/common/library/xpcom.h =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.swt/Eclipse_SWT_Mozilla/common/library/xpcom.h,v -retrieving revision 1.6 -diff -u -r1.6 xpcom.h ---- plugins/org.eclipse.swt/Eclipse_SWT_Mozilla/common/library/xpcom.h 9 May 2006 18:54:24 -0000 1.6 -+++ plugins/org.eclipse.swt/Eclipse_SWT_Mozilla/common/library/xpcom.h 15 Sep 2006 19:04:09 -0000 +retrieving revision 1.6.2.1 +diff -u -r1.6.2.1 xpcom.h +--- Eclipse_SWT_Mozilla/common/library/xpcom.h 26 Jul 2006 16:33:23 -0000 1.6.2.1 ++++ Eclipse_SWT_Mozilla/common/library/xpcom.h 28 Sep 2006 20:15:53 -0000 @@ -32,7 +32,6 @@ #define NDEBUG @@ -60,10 +122,10 @@ diff -u -r1.6 xpcom.h Index: Eclipse_SWT_Mozilla/common/library/xpcom.cpp =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.swt/Eclipse_SWT_Mozilla/common/library/xpcom.cpp,v -retrieving revision 1.29 -diff -u -r1.29 xpcom.cpp ---- plugins/org.eclipse.swt/Eclipse_SWT_Mozilla/common/library/xpcom.cpp 9 May 2006 21:52:54 -0000 1.29 -+++ plugins/org.eclipse.swt/Eclipse_SWT_Mozilla/common/library/xpcom.cpp 15 Sep 2006 19:04:09 -0000 +retrieving revision 1.29.2.1 +diff -u -r1.29.2.1 xpcom.cpp +--- Eclipse_SWT_Mozilla/common/library/xpcom.cpp 26 Jul 2006 16:33:23 -0000 1.29.2.1 ++++ Eclipse_SWT_Mozilla/common/library/xpcom.cpp 28 Sep 2006 20:15:53 -0000 @@ -85,14 +85,16 @@ } #endif @@ -87,51 +149,115 @@ diff -u -r1.29 xpcom.cpp return rc; } #endif -@@ -113,18 +115,6 @@ - } - #endif - --#ifndef NO_NS_1TermEmbedding --JNIEXPORT jint JNICALL XPCOM_NATIVE(NS_1TermEmbedding) -- (JNIEnv *env, jclass that) --{ -- jint rc = 0; -- XPCOM_NATIVE_ENTER(env, that, NS_1TermEmbedding_FUNC); -- rc = (jint)NS_TermEmbedding(); -- XPCOM_NATIVE_EXIT(env, that, NS_1TermEmbedding_FUNC); -- return rc; --} --#endif -- - #ifndef NO_PR_1Free - JNIEXPORT void JNICALL XPCOM_NATIVE(PR_1Free) - (JNIEnv *env, jclass that, jint arg0) -Index: Eclipse_SWT_Mozilla/common/org/eclipse/swt/internal/mozilla/XPCOM.java +Index: Eclipse_SWT_Mozilla/common/library/xpcom_stats.h =================================================================== -RCS file: /cvsroot/eclipse/org.eclipse.swt/Eclipse_SWT_Mozilla/common/org/eclipse/swt/internal/mozilla/XPCOM.java,v -retrieving revision 1.48 -diff -u -r1.48 XPCOM.java ---- plugins/org.eclipse.swt/Eclipse_SWT_Mozilla/common/org/eclipse/swt/internal/mozilla/XPCOM.java 9 May 2006 18:54:24 -0000 1.48 -+++ plugins/org.eclipse.swt/Eclipse_SWT_Mozilla/common/org/eclipse/swt/internal/mozilla/XPCOM.java 15 Sep 2006 19:04:09 -0000 -@@ -102,9 +102,8 @@ - public static final native void memmove(byte[] dest, char[] src, int nbytes); - public static final native int NS_GetComponentManager(int /*long*/[] result); - public static final native int NS_GetServiceManager(int /*long*/[] result); --public static final native int NS_InitEmbedding(int /*long*/ aMozBinDirectory, int /*long*/ aAppFileLocProvider); -+public static final native int NS_InitXPCOM3(int /*long*/ result, int /*long*/ binDirectory, int /*long*/ appFileLocationProvider, int /*long*/ staticComponents, int componentCount); - public static final native int NS_NewLocalFile(int /*long*/ path, boolean followLinks, int /*long*/[] result); --public static final native int NS_TermEmbedding(); - public static final native int strlen_PRUnichar(int /*long*/ s); - public static final native int /*long*/ nsEmbedCString_new(); - public static final native int /*long*/ nsEmbedCString_new(byte[] aString, int length); +RCS file: /cvsroot/eclipse/org.eclipse.swt/Eclipse_SWT_Mozilla/common/library/xpcom_stats.h,v +retrieving revision 1.14.2.1 +diff -u -r1.14.2.1 xpcom_stats.h +--- Eclipse_SWT_Mozilla/common/library/xpcom_stats.h 26 Jul 2006 16:33:23 -0000 1.14.2.1 ++++ Eclipse_SWT_Mozilla/common/library/xpcom_stats.h 28 Sep 2006 20:15:53 -0000 +@@ -41,7 +41,7 @@ + Call_FUNC, + NS_1GetComponentManager_FUNC, + NS_1GetServiceManager_FUNC, +- NS_1InitEmbedding_FUNC, ++ NS_1InitXPCOM3_FUNC, + NS_1NewLocalFile_FUNC, + NS_1TermEmbedding_FUNC, + PR_1Free_FUNC, Index: Eclipse_SWT_Mozilla/gtk/org/eclipse/swt/browser/Browser.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.swt/Eclipse_SWT_Mozilla/gtk/org/eclipse/swt/browser/Browser.java,v -retrieving revision 1.61 -diff -u -r1.61 Browser.java ---- plugins/org.eclipse.swt/Eclipse_SWT_Mozilla/gtk/org/eclipse/swt/browser/Browser.java 9 May 2006 19:47:09 -0000 1.61 -+++ plugins/org.eclipse.swt/Eclipse_SWT_Mozilla/gtk/org/eclipse/swt/browser/Browser.java 15 Sep 2006 19:04:10 -0000 -@@ -175,11 +175,11 @@ +retrieving revision 1.61.2.2 +diff -u -r1.61.2.2 Browser.java +--- Eclipse_SWT_Mozilla/gtk/org/eclipse/swt/browser/Browser.java 24 Aug 2006 20:19:25 -0000 1.61.2.2 ++++ Eclipse_SWT_Mozilla/gtk/org/eclipse/swt/browser/Browser.java 28 Sep 2006 20:15:54 -0000 +@@ -10,15 +10,75 @@ + *******************************************************************************/ + package org.eclipse.swt.browser; + +-import java.io.*; +-import java.util.*; +-import org.eclipse.swt.*; +-import org.eclipse.swt.widgets.*; +-import org.eclipse.swt.graphics.*; +-import org.eclipse.swt.internal.*; +-import org.eclipse.swt.internal.gtk.*; +-import org.eclipse.swt.internal.mozilla.*; +-import org.eclipse.swt.layout.*; ++import java.io.File; ++import java.io.UnsupportedEncodingException; ++import java.util.Locale; ++import java.util.StringTokenizer; ++ ++import org.eclipse.swt.SWT; ++import org.eclipse.swt.SWTError; ++import org.eclipse.swt.SWTException; ++import org.eclipse.swt.graphics.Point; ++import org.eclipse.swt.graphics.Rectangle; ++import org.eclipse.swt.internal.Callback; ++import org.eclipse.swt.internal.Converter; ++import org.eclipse.swt.internal.Library; ++import org.eclipse.swt.internal.gtk.GdkEvent; ++import org.eclipse.swt.internal.gtk.LONG; ++import org.eclipse.swt.internal.gtk.OS; ++import org.eclipse.swt.internal.mozilla.XPCOM; ++import org.eclipse.swt.internal.mozilla.XPCOMObject; ++import org.eclipse.swt.internal.mozilla.nsEmbedString; ++import org.eclipse.swt.internal.mozilla.nsIAppShell; ++import org.eclipse.swt.internal.mozilla.nsIBaseWindow; ++import org.eclipse.swt.internal.mozilla.nsICategoryManager; ++import org.eclipse.swt.internal.mozilla.nsIComponentManager; ++import org.eclipse.swt.internal.mozilla.nsIComponentRegistrar; ++import org.eclipse.swt.internal.mozilla.nsIContextMenuListener; ++import org.eclipse.swt.internal.mozilla.nsICookie; ++import org.eclipse.swt.internal.mozilla.nsICookieManager; ++import org.eclipse.swt.internal.mozilla.nsID; ++import org.eclipse.swt.internal.mozilla.nsIDOMEvent; ++import org.eclipse.swt.internal.mozilla.nsIDOMMouseEvent; ++import org.eclipse.swt.internal.mozilla.nsIDOMWindow; ++import org.eclipse.swt.internal.mozilla.nsIDirectoryService; ++import org.eclipse.swt.internal.mozilla.nsIDocShell; ++import org.eclipse.swt.internal.mozilla.nsIEmbeddingSiteWindow; ++import org.eclipse.swt.internal.mozilla.nsIFile; ++import org.eclipse.swt.internal.mozilla.nsIIOService; ++import org.eclipse.swt.internal.mozilla.nsIInterfaceRequestor; ++import org.eclipse.swt.internal.mozilla.nsILocalFile; ++import org.eclipse.swt.internal.mozilla.nsIPrefBranch; ++import org.eclipse.swt.internal.mozilla.nsIPrefLocalizedString; ++import org.eclipse.swt.internal.mozilla.nsIPrefService; ++import org.eclipse.swt.internal.mozilla.nsIProperties; ++import org.eclipse.swt.internal.mozilla.nsIRequest; ++import org.eclipse.swt.internal.mozilla.nsIServiceManager; ++import org.eclipse.swt.internal.mozilla.nsISimpleEnumerator; ++import org.eclipse.swt.internal.mozilla.nsISupports; ++import org.eclipse.swt.internal.mozilla.nsISupportsWeakReference; ++import org.eclipse.swt.internal.mozilla.nsITooltipListener; ++import org.eclipse.swt.internal.mozilla.nsIURI; ++import org.eclipse.swt.internal.mozilla.nsIURIContentListener; ++import org.eclipse.swt.internal.mozilla.nsIWeakReference; ++import org.eclipse.swt.internal.mozilla.nsIWebBrowser; ++import org.eclipse.swt.internal.mozilla.nsIWebBrowserChrome; ++import org.eclipse.swt.internal.mozilla.nsIWebBrowserChromeFocus; ++import org.eclipse.swt.internal.mozilla.nsIWebBrowserFocus; ++import org.eclipse.swt.internal.mozilla.nsIWebBrowserStream; ++import org.eclipse.swt.internal.mozilla.nsIWebNavigation; ++import org.eclipse.swt.internal.mozilla.nsIWebProgress; ++import org.eclipse.swt.internal.mozilla.nsIWebProgressListener; ++import org.eclipse.swt.internal.mozilla.nsIWindowWatcher; ++import org.eclipse.swt.layout.FillLayout; ++import org.eclipse.swt.widgets.Composite; ++import org.eclipse.swt.widgets.Display; ++import org.eclipse.swt.widgets.Event; ++import org.eclipse.swt.widgets.Label; ++import org.eclipse.swt.widgets.Listener; ++import org.eclipse.swt.widgets.Menu; ++import org.eclipse.swt.widgets.Shell; ++import org.eclipse.swt.widgets.Widget; + + /** + * Instances of this class implement the browser user interface +@@ -218,11 +278,11 @@ if (retVal[0] == 0) error(XPCOM.NS_ERROR_NULL_POINTER); nsILocalFile localFile = new nsILocalFile(retVal[0]); @@ -145,62 +271,68 @@ diff -u -r1.61 Browser.java } rc = XPCOM.NS_GetComponentManager(result); -@@ -1250,27 +1250,6 @@ - tip = null; - - BrowserCount--; -- /* -- * This code is intentionally commented. It is not possible to reinitialize -- * Mozilla once it has been terminated. NS_InitEmbedding always fails after -- * NS_TermEmbedding has been called. The workaround is to call NS_InitEmbedding -- * once and never call NS_TermEmbedding. -- */ --// if (BrowserCount == 0) { --// if (AppShell != null) { --// // Shutdown the appshell service. --// rc = AppShell.Spindown(); --// if (rc != XPCOM.NS_OK) error(rc); --// AppShell.Release(); --// AppShell = null; --// } --// WindowCreator.Release(); --// WindowCreator = null; --// PromptService.Release(); --// PromptService = null; --// XPCOM.NS_TermEmbedding(); --// mozilla = false; --// } - } +@@ -283,7 +343,7 @@ + rc = properties.Get(buffer, nsIFile.NS_IFILE_IID, result); + if (rc != XPCOM.NS_OK) error(rc); + if (result[0] == 0) error(XPCOM.NS_NOINTERFACE); +- properties.Release(); ++ // properties.Release() is now after the Set below - void Activate() { -Index: JNI_Generation/org/eclipse/swt/tools/internal/org.eclipse.swt.internal.mozilla.XPCOM.properties -=================================================================== -RCS file: /cvsroot/eclipse/org.eclipse.swt.tools/JNI_Generation/org/eclipse/swt/tools/internal/org.eclipse.swt.internal.mozilla.XPCOM.properties,v -retrieving revision 1.11 -diff -u -r1.11 org.eclipse.swt.internal.mozilla.XPCOM.properties ---- plugins/org.eclipse.swt.tools/JNI_Generation/org/eclipse/swt/tools/internal/org.eclipse.swt.internal.mozilla.XPCOM.properties 9 May 2006 21:53:07 -0000 1.11 -+++ plugins/org.eclipse.swt.tools/JNI_Generation/org/eclipse/swt/tools/internal/org.eclipse.swt.internal.mozilla.XPCOM.properties 15 Sep 2006 19:04:11 -0000 -@@ -24,17 +24,18 @@ - XPCOM_NS_GetServiceManager= - XPCOM_NS_GetServiceManager_0=cast=(nsIServiceManager**) - --XPCOM_NS_InitEmbedding= --XPCOM_NS_InitEmbedding_0=cast=(nsILocalFile *) --XPCOM_NS_InitEmbedding_1=cast=(nsIDirectoryServiceProvider *) -+XPCOM_NS_InitXPCOM3= -+XPCOM_NS_InitXPCOM3_0=cast=(nsIServiceManager**) -+XPCOM_NS_InitXPCOM3_1=cast=(nsIFile *) -+XPCOM_NS_InitXPCOM3_2=cast=(nsIDirectoryServiceProvider *) -+XPCOM_NS_InitXPCOM3_3=cast=(const nsStaticModuleInfo *) -+XPCOM_NS_InitXPCOM3_4=cast=(PRUint32) - - XPCOM_NS_NewLocalFile= - XPCOM_NS_NewLocalFile_0=cast=(nsAString *),flags=struct - XPCOM_NS_NewLocalFile_1= - XPCOM_NS_NewLocalFile_2=cast=(nsILocalFile**) - --XPCOM_NS_TermEmbedding= + nsIFile profileDir = new nsIFile(result[0]); + result[0] = 0; +@@ -305,24 +365,15 @@ + pathString.dispose(); // + + profileDir = new nsIFile(result[0]); +- result[0] = 0; +- +- rc = XPCOM_PROFILE.NS_NewProfileDirServiceProvider(true, result); ++ ++ // Set the profile dir property so that it's initialized for ++ // things like password manager and https ++ buffer = Converter.wcsToMbcs(null, XPCOM.NS_APP_USER_PROFILE_50_DIR, true); ++ rc = properties.Set(buffer, profileDir.getAddress()); + if (rc != XPCOM.NS_OK) error(rc); +- if (result[0] == 0) error(XPCOM.NS_NOINTERFACE); +- +- final int /*long*/ dirServiceProvider = result[0]; ++ properties.Release(); ++ + result[0] = 0; +- rc = XPCOM_PROFILE.ProfileDirServiceProvider_Register(dirServiceProvider); +- if (rc != XPCOM.NS_OK) error(rc); +- rc = XPCOM_PROFILE.ProfileDirServiceProvider_SetProfileDir(dirServiceProvider, profileDir.getAddress()); +- if (rc != XPCOM.NS_OK) error(rc); - - XPCOM_PR_Free= - XPCOM_PR_Free_0=cast=(void *) +- getDisplay().addListener(SWT.Dispose, new Listener() { +- public void handleEvent(Event e) { +- XPCOM_PROFILE.ProfileDirServiceProvider_Shutdown(dirServiceProvider); +- } +- }); + } + + /* +Index: Eclipse_SWT_Mozilla/common/org/eclipse/swt/internal/mozilla/XPCOM.java +=================================================================== +RCS file: /cvsroot/eclipse/org.eclipse.swt/Eclipse_SWT_Mozilla/common/org/eclipse/swt/internal/mozilla/XPCOM.java,v +retrieving revision 1.48.2.1 +diff -u -r1.48.2.1 XPCOM.java +--- Eclipse_SWT_Mozilla/common/org/eclipse/swt/internal/mozilla/XPCOM.java 26 Jul 2006 16:33:23 -0000 1.48.2.1 ++++ Eclipse_SWT_Mozilla/common/org/eclipse/swt/internal/mozilla/XPCOM.java 28 Sep 2006 20:15:53 -0000 +@@ -89,6 +89,7 @@ + public static final int NS_ERROR_HTMLPARSER_UNRESOLVEDDTD = 0x804e03f3; + public static final int NS_ERROR_FILE_NOT_FOUND = 0x80520012; + public static final String NS_APP_APPLICATION_REGISTRY_DIR = "AppRegD"; //$NON-NLS-1$ ++ public static final String NS_APP_USER_PROFILE_50_DIR = "ProfD"; //$NON-NLS-1$ + public static final native void memmove(nsID dest, int /*long*/ src, int nbytes); + public static final native void memmove(int /*long*/ dest, nsID src, int nbytes); +@@ -103,7 +104,7 @@ + public static final native void memmove(byte[] dest, char[] src, int nbytes); + public static final native int NS_GetComponentManager(int /*long*/[] result); + public static final native int NS_GetServiceManager(int /*long*/[] result); +-public static final native int NS_InitEmbedding(int /*long*/ aMozBinDirectory, int /*long*/ aAppFileLocProvider); ++public static final native int NS_InitXPCOM3(int /*long*/ result, int /*long*/ binDirectory, int /*long*/ appFileLocationProvider, int /*long*/ staticComponents, int componentCount); + public static final native int NS_NewLocalFile(int /*long*/ path, boolean followLinks, int /*long*/[] result); + public static final native int NS_TermEmbedding(); + public static final native int strlen_PRUnichar(int /*long*/ s); diff --git a/eclipse.spec b/eclipse.spec index ac50c66..50a7797 100644 --- a/eclipse.spec +++ b/eclipse.spec @@ -2,6 +2,7 @@ # - migrate compare API patch (patch33) to 3.2 final # - migrate cairo patch (patch43) to 3.2 final # - migrate GNU formatter patches (patch20, patch21) to 3.2 final +# - comment on this bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=126648 Epoch: 1 @@ -31,7 +32,7 @@ Epoch: 1 Summary: An open, extensible IDE Name: eclipse Version: %{eclipse_majmin}.%{eclipse_micro} -Release: 0.RC.3%{?dist} +Release: 0.RC.4%{?dist} License: EPL Group: Text Editors/Integrated Development Environments (IDE) URL: http://www.eclipse.org/ @@ -65,8 +66,6 @@ Patch2: %{name}-build.patch Patch3: %{name}-icu4j-build-files.patch Patch4: %{name}-libupdatebuild.patch Patch5: %{name}-libupdatebuild2.patch -Patch6: %{name}-xpcom-profile.patch -Patch7: %{name}-swt-add-gecko-paths-profile-libs.patch # Build swttools.jar # https://bugs.eclipse.org/bugs/show_bug.cgi?id=90364 Patch18: %{name}-swttools.patch @@ -85,8 +84,6 @@ Patch46: %{name}-libswt-xpcomgcc4.patch Patch47: %{name}-launcher-link.patch # Don't attempt to link to Sun's javadocs Patch48: %{name}-javadoclinks.patch -# https://bugs.eclipse.org/bugs/show_bug.cgi?id=126648 -Patch52: %{name}-libswt-mozilla2.patch # Always generate debug info when building RPMs (Andrew Haley) Patch49: %{name}-ecj-rpmdebuginfo.patch # generic releng plugins that can be used to build plugins @@ -116,6 +113,15 @@ Patch22: %{name}-updatehomedir.patch Patch34: %{name}-bz162177.patch # Use ecj for gcj Patch57: %{name}-ecj-gcj.patch +# Build against firefox: +# - fix swt profile include path +# - only compile the mozilla 1.7 / firefox profile library +# - don't use symbols not in our firefox builds +# FIXME: add reference(s) to discussion(s) and bug(s) +# Note: I made this patch from within Eclipse and then did the following to +# it due to spaces in the paths: +# sed --in-place "s/Eclipse\ SWT\ Mozilla/Eclipse_SWT_Mozilla/g" eclipse-swt-firefox.patch +# sed --in-place "s/Eclipse\ SWT\ PI/Eclipse_SWT_PI/g" eclipse-swt-firefox.patch Patch59: %{name}-swt-firefox.patch Patch100: customBuildCallbacks.xml-add-pre.gather.bin.parts.patch @@ -372,15 +378,6 @@ to create an IDE based on Eclipse. # I hate spaces in paths with patch! pushd plugins/org.eclipse.swt/Eclipse\ SWT\ PI/gtk/library %patch0 -p0 -%patch52 -p0 -# Only compile the mozilla 1.7 / firefox profile library -sed --in-place "s/make_mozilla:\$(MOZILLA_LIB).*/make_mozilla:\$(MOZILLA_LIB) \$(PROFILE17_LIB)/" make_linux.mak -# FIXME: file bug about this upstream -%patch7 -p0 -popd -pushd ./plugins/org.eclipse.swt/Eclipse\ SWT\ Mozilla/common/library -# fix swt profile include -%patch6 -p0 popd %patch2 -p0 @@ -455,11 +452,14 @@ popd %patch55 -p0 rm plugins/org.junit4/junit-4.1.jar +# I love directories with spaces in their names mv "plugins/org.eclipse.swt/Eclipse SWT Mozilla" plugins/org.eclipse.swt/Eclipse_SWT_Mozilla -mv "plugins/org.eclipse.swt.tools/JNI Generation" plugins/org.eclipse.swt.tools/JNI_Generation +mv "plugins/org.eclipse.swt/Eclipse SWT PI" plugins/org.eclipse.swt/Eclipse_SWT_PI +pushd plugins/org.eclipse.swt %patch59 +popd mv plugins/org.eclipse.swt/Eclipse_SWT_Mozilla "plugins/org.eclipse.swt/Eclipse SWT Mozilla" -mv plugins/org.eclipse.swt.tools/JNI_Generation "plugins/org.eclipse.swt.tools/JNI Generation" +mv plugins/org.eclipse.swt/Eclipse_SWT_PI "plugins/org.eclipse.swt/Eclipse SWT PI" # FIXME check if this has been applied upstream pushd plugins/org.eclipse.platform.doc.isv @@ -1590,6 +1590,9 @@ fi %{_datadir}/%{name}/plugins/org.eclipse.sdk_* %changelog +* Thu Sep 28 2006 Andrew Overholt 3.2.1-0.RC.4 +- Use new swt-firefox patch and consolidate others into one. + * Wed Sep 27 2006 Ben Konrath 3.2.1-0.RC.3 - Fix typo in %postun of -sdk and -platform. - Disable help index generation on ia64.