diff --git a/MozillaFirefox.changes b/MozillaFirefox.changes index a769f01..e655aab 100644 --- a/MozillaFirefox.changes +++ b/MozillaFirefox.changes @@ -1,3 +1,23 @@ +------------------------------------------------------------------- +Wed Aug 22 17:53:03 CEST 2007 - maw@suse.de + +- Merge changes from the build service (thanks, Wolfgang): + + Provide locale dependency information (#302288) + + Add x11-session.patch, supporting X11 session management + (#227047) + + Update to version 2.0.0.6 + * MFSA 2007-26 Privilege escalation through chrome-loaded + about:blank windows + * MFSA 2007-27 Unescaped URIs passed to external programs + (only relevant on Windows) +- Use %fdupes. + +------------------------------------------------------------------- +Tue Aug 21 09:45:35 CEST 2007 - aj@suse.de + +- Adjust bookmarks: Add news.opensuse.org, use new software.o.o + page. + ------------------------------------------------------------------- Thu Aug 16 14:57:27 CEST 2007 - mauro@suse.de diff --git a/MozillaFirefox.spec b/MozillaFirefox.spec index cc3958f..d693df0 100644 --- a/MozillaFirefox.spec +++ b/MozillaFirefox.spec @@ -1,5 +1,5 @@ # -# spec file for package MozillaFirefox (Version 2.0.0.5) +# spec file for package MozillaFirefox (Version 2.0.0.6) # # Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany. # This file and all modifications and additions to the pristine @@ -17,6 +17,9 @@ BuildRequires: dbus-1-devel %else BuildRequires: dbus-1-glib-devel %endif +%if %suse_version > 1020 +BuildRequires: fdupes +%endif License: GPL v2 or later, LGPL v2 or later, We have explicit permission to use the trademark. Provides: web_browser Provides: firefox @@ -25,8 +28,8 @@ Obsoletes: MozillaFirebird <= 1.0.7 %if %sles_version == 10 Obsoletes: mozilla %endif -Version: 2.0.0.5 -Release: 15 +Version: 2.0.0.6 +Release: 1 Summary: Mozilla Firefox Web Browser URL: http://www.mozilla.org/ Group: Productivity/Networking/Web/Browsers @@ -93,6 +96,7 @@ Patch34: skin-selection.patch Patch36: greasemonkey.patch Patch37: make-perl.patch Patch38: tango-maxversion.patch +Patch39: x11-session.patch # pango-cairo.patch dbus.patch startup.patch Patch100: configure.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -166,6 +170,7 @@ Authors: %package translations Summary: Translations for MozillaFirefox +Provides: locale(MozillaFirefox:af;ar;bg;be;ca;cs;da;de;el;en_GB;es_AR;es_ES;eu;fi;fr;fy_NL;ga_IE;gu_IN;he;hu;it;ja;ka;ko;ku;lt;mk;mn;nb_NO;nl;nn_NO;pa_IN;pl;pt_BR;pt_PT;ro;ru;sk;sl;sv_SE;tr;zh_CN;zh_TW) Group: Productivity/Networking/Web/Browsers PreReq: %{name} = %{version} @@ -218,6 +223,7 @@ cd $RPM_BUILD_DIR/mozilla pushd $RPM_BUILD_DIR %patch38 popd +%patch39 -p1 %patch100 %if %has_system_nss #%patch101 @@ -420,6 +426,10 @@ chmod 755 %{my_requires} %define __find_requires %{my_requires} %endif %find_gconf_schemas +%if %suse_version > 1020 + +%fdupes $RPM_BUILD_ROOT +%endif %clean rm -rf $RPM_BUILD_ROOT @@ -551,6 +561,20 @@ exit 0 %endif %changelog +* Wed Aug 22 2007 - maw@suse.de +- Merge changes from the build service (thanks, Wolfgang): + + Provide locale dependency information (#302288) + + Add x11-session.patch, supporting X11 session management + (#227047) + + Update to version 2.0.0.6 + * MFSA 2007-26 Privilege escalation through chrome-loaded + about:blank windows + * MFSA 2007-27 Unescaped URIs passed to external programs + (only relevant on Windows) +- Use %%fdupes. +* Tue Aug 21 2007 - aj@suse.de +- Adjust bookmarks: Add news.opensuse.org, use new software.o.o + page. * Thu Aug 16 2007 - mauro@suse.de - Revert previous change. * Tue Aug 14 2007 - mauro@suse.de diff --git a/bookmarks.html.suse b/bookmarks.html.suse index 4683c88..b68d597 100644 --- a/bookmarks.html.suse +++ b/bookmarks.html.suse @@ -4,7 +4,7 @@ DO NOT EDIT! --> Bookmarks -

Bookmarks

+

Bookmarks

Get Bookmark Add-ons @@ -15,7 +15,8 @@

openSUSE

openSUSE -
openSUSE Download +
openSUSE Download +
openSUSE News
Novell / Linux
SUSE Linux Cool Solutions
SUSE Linux Support diff --git a/firefox-2.0.0.5-source.tar.bz2 b/firefox-2.0.0.5-source.tar.bz2 deleted file mode 100644 index 10f1193..0000000 --- a/firefox-2.0.0.5-source.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7b1f3d372b4eb37d51bb4cbc099ee15c66380c0b8970c1d6f2430c1da1d40e68 -size 37622492 diff --git a/firefox-2.0.0.6-source.tar.bz2 b/firefox-2.0.0.6-source.tar.bz2 new file mode 100644 index 0000000..8ec2da5 --- /dev/null +++ b/firefox-2.0.0.6-source.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b5ce09c6e3a31f419bd3117a9cb569d5ebfab7dab9221dbca0a73eaedee80197 +size 37624026 diff --git a/l10n-2.0.0.5.tar.bz2 b/l10n-2.0.0.5.tar.bz2 deleted file mode 100644 index b5f6f3a..0000000 --- a/l10n-2.0.0.5.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7a1c21611cf11d3ef67409cf19c23f02b0866f7bfe9f872a2eb065cc8726d684 -size 10102680 diff --git a/l10n-2.0.0.6.tar.bz2 b/l10n-2.0.0.6.tar.bz2 new file mode 100644 index 0000000..0b4257f --- /dev/null +++ b/l10n-2.0.0.6.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e8d2aed30c2163ea932c012d9f992a411c145696408dca628ddaf1ca9912f7b +size 10101106 diff --git a/x11-session.patch b/x11-session.patch new file mode 100644 index 0000000..40e860b --- /dev/null +++ b/x11-session.patch @@ -0,0 +1,236 @@ +From: upstream +Subject: Support X11 session management +References: +https://bugzilla.novell.com/show_bug.cgi?id=227047 +https://bugzilla.mozilla.org/show_bug.cgi?id=93789 + +diff --git a/toolkit/xre/Makefile.in b/toolkit/xre/Makefile.in +index e3dd8d9..4371882 100644 +--- a/toolkit/xre/Makefile.in ++++ b/toolkit/xre/Makefile.in +@@ -137,21 +137,25 @@ ifneq (,$(filter mac cocoa,$(MOZ_WIDGET_ + CPPSRCS += nsNativeAppSupportMac.cpp + else + ifeq ($(MOZ_WIDGET_TOOLKIT),os2) + CPPSRCS += nsNativeAppSupportOS2.cpp + else + ifeq ($(MOZ_WIDGET_TOOLKIT),beos) + CPPSRCS += nsNativeAppSupportBeOS.cpp + else ++ifeq ($(MOZ_WIDGET_TOOLKIT),gtk2) ++CPPSRCS += nsNativeAppSupportUnix.cpp ++else + CPPSRCS += nsNativeAppSupportDefault.cpp + endif + endif + endif + endif ++endif + + ifneq (,$(filter mac cocoa,$(MOZ_WIDGET_TOOLKIT))) + CMSRCS = MacLaunchHelper.m + CPPSRCS += nsCommandLineServiceMac.cpp + LOCAL_INCLUDES += -I$(topsrcdir)/xpfe/bootstrap/appleevents + OS_CXXFLAGS += -fexceptions + SHARED_LIBRARY_LIBS += $(DEPTH)/xpfe/bootstrap/appleevents/$(LIB_PREFIX)appleevents_s.$(LIB_SUFFIX) + endif +diff --git a/toolkit/xre/nsNativeAppSupportUnix.cpp b/toolkit/xre/nsNativeAppSupportUnix.cpp +new file mode 100644 +index 0000000..ad73f4c +--- /dev/null ++++ b/toolkit/xre/nsNativeAppSupportUnix.cpp +@@ -0,0 +1,194 @@ ++/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ ++/* ***** BEGIN LICENSE BLOCK ***** ++ * Version: MPL 1.1/GPL 2.0/LGPL 2.1 ++ * ++ * The contents of this file are subject to the Mozilla Public License Version ++ * 1.1 (the "License"); you may not use this file except in compliance with ++ * the License. You may obtain a copy of the License at ++ * http://www.mozilla.org/MPL/ ++ * ++ * Software distributed under the License is distributed on an "AS IS" basis, ++ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License ++ * for the specific language governing rights and limitations under the ++ * License. ++ * ++ * The Original Code is Unix Native App Support. ++ * ++ * The Initial Developer of the Original Code is ++ * Mozilla Corporation. ++ * Portions created by the Initial Developer are Copyright (C) 2007 ++ * the Initial Developer. All Rights Reserved. ++ * ++ * Contributor(s): ++ * Michael Wu (original author) ++ * ++ * Alternatively, the contents of this file may be used under the terms of ++ * either the GNU General Public License Version 2 or later (the "GPL"), or ++ * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), ++ * in which case the provisions of the GPL or the LGPL are applicable instead ++ * of those above. If you wish to allow use of your version of this file only ++ * under the terms of either the GPL or the LGPL, and not to allow others to ++ * use your version of this file under the terms of the MPL, indicate your ++ * decision by deleting the provisions above and replace them with the notice ++ * and other provisions required by the GPL or the LGPL. If you do not delete ++ * the provisions above, a recipient may use your version of this file under ++ * the terms of any one of the MPL, the GPL or the LGPL. ++ * ++ * ***** END LICENSE BLOCK ***** */ ++ ++#include "nsNativeAppSupportBase.h" ++#include "nsCOMPtr.h" ++#include "nsXPCOM.h" ++#include "nsISupportsPrimitives.h" ++#include "nsIObserverService.h" ++#include "nsIAppStartup.h" ++#include "nsServiceManagerUtils.h" ++#include "prlink.h" ++ ++#include ++#include ++ ++typedef struct _GnomeProgram GnomeProgram; ++typedef struct _GnomeModuleInfo GnomeModuleInfo; ++typedef struct _GnomeClient GnomeClient; ++ ++typedef enum { ++ GNOME_SAVE_GLOBAL, ++ GNOME_SAVE_LOCAL, ++ GNOME_SAVE_BOTH ++} GnomeSaveStyle; ++ ++typedef enum { ++ GNOME_INTERACT_NONE, ++ GNOME_INTERACT_ERRORS, ++ GNOME_INTERACT_ANY ++} GnomeInteractStyle; ++ ++typedef enum { ++ GNOME_DIALOG_ERROR, ++ GNOME_DIALOG_NORMAL ++} GnomeDialogType; ++ ++typedef GnomeProgram * (*_gnome_program_init_fn)(const char *, const char *, ++ const GnomeModuleInfo *, int, ++ char **, const char *, ...); ++typedef const GnomeModuleInfo * (*_libgnomeui_module_info_get_fn)(); ++typedef GnomeClient * (*_gnome_master_client_fn)(void); ++typedef void (*GnomeInteractFunction)(GnomeClient *, gint, GnomeDialogType, ++ gpointer); ++typedef void (*_gnome_client_request_interaction_fn)(GnomeClient *, ++ GnomeDialogType, ++ GnomeInteractFunction, ++ gpointer); ++typedef void (*_gnome_interaction_key_return_fn)(gint, gboolean); ++ ++static _gnome_client_request_interaction_fn gnome_client_request_interaction; ++static _gnome_interaction_key_return_fn gnome_interaction_key_return; ++ ++void interact_cb(GnomeClient *client, gint key, ++ GnomeDialogType type, gpointer data) ++{ ++ nsCOMPtr obsServ = ++ do_GetService("@mozilla.org/observer-service;1"); ++ nsCOMPtr cancelQuit = ++ do_CreateInstance(NS_SUPPORTS_PRBOOL_CONTRACTID); ++ ++ cancelQuit->SetData(PR_FALSE); ++ ++ obsServ->NotifyObservers(cancelQuit, "quit-application-requested", nsnull); ++ ++ PRBool abortQuit; ++ cancelQuit->GetData(&abortQuit); ++ ++ gnome_interaction_key_return(key, abortQuit); ++} ++ ++gboolean save_yourself_cb(GnomeClient *client, gint phase, ++ GnomeSaveStyle style, gboolean shutdown, ++ GnomeInteractStyle interact, gboolean fast, ++ gpointer user_data) ++{ ++ if (interact == GNOME_INTERACT_ANY) ++ gnome_client_request_interaction(client, GNOME_DIALOG_NORMAL, ++ interact_cb, nsnull); ++ return TRUE; ++} ++ ++void die_cb(GnomeClient *client, gpointer user_data) ++{ ++ nsCOMPtr obsServ = ++ do_GetService("@mozilla.org/observer-service;1"); ++ nsCOMPtr appService = ++ do_GetService("@mozilla.org/toolkit/app-startup;1"); ++ ++ if (obsServ) ++ obsServ->NotifyObservers(nsnull, "quit-application-granted", nsnull); ++ ++ if (appService) ++ appService->Quit(nsIAppStartup::eForceQuit); ++} ++ ++class nsNativeAppSupportUnix : public nsNativeAppSupportBase ++{ ++public: ++ NS_IMETHOD Start(PRBool* aRetVal); ++}; ++ ++NS_IMETHODIMP ++nsNativeAppSupportUnix::Start(PRBool *aRetVal) ++{ ++ *aRetVal = PR_TRUE; ++ ++ PRLibrary *gnomeuiLib = PR_LoadLibrary("libgnomeui-2.so.0"); ++ if (!gnomeuiLib) ++ return NS_OK; ++ ++ PRLibrary *gnomeLib = PR_LoadLibrary("libgnome-2.so.0"); ++ if (!gnomeLib) { ++ PR_UnloadLibrary(gnomeuiLib); ++ return NS_OK; ++ } ++ ++ _gnome_program_init_fn gnome_program_init = ++ (_gnome_program_init_fn)PR_FindFunctionSymbol(gnomeLib, "gnome_program_init"); ++ _libgnomeui_module_info_get_fn libgnomeui_module_info_get = (_libgnomeui_module_info_get_fn)PR_FindFunctionSymbol(gnomeuiLib, "libgnomeui_module_info_get"); ++ if (!gnome_program_init || !libgnomeui_module_info_get) { ++ PR_UnloadLibrary(gnomeuiLib); ++ PR_UnloadLibrary(gnomeLib); ++ return NS_OK; ++ } ++ ++ char *argv[2] = { "gecko", "--disable-crash-dialog" }; ++ gnome_program_init("Gecko", "1.0", libgnomeui_module_info_get(), 2, argv, NULL); ++ ++ // Careful! These libraries cannot be unloaded after this point because ++ // gnome_program_init causes atexit handlers to be registered. Strange ++ // crashes will occur if these libraries are unloaded. ++ ++ gnome_client_request_interaction = (_gnome_client_request_interaction_fn) ++ PR_FindFunctionSymbol(gnomeuiLib, "gnome_client_request_interaction"); ++ gnome_interaction_key_return = (_gnome_interaction_key_return_fn) ++ PR_FindFunctionSymbol(gnomeuiLib, "gnome_interaction_key_return"); ++ ++ _gnome_master_client_fn gnome_master_client = (_gnome_master_client_fn) ++ PR_FindFunctionSymbol(gnomeuiLib, "gnome_master_client"); ++ ++ GnomeClient *client = gnome_master_client(); ++ g_signal_connect(client, "save-yourself", G_CALLBACK(save_yourself_cb), NULL); ++ g_signal_connect(client, "die", G_CALLBACK(die_cb), NULL); ++ ++ return NS_OK; ++} ++ ++nsresult ++NS_CreateNativeAppSupport(nsINativeAppSupport **aResult) ++{ ++ nsNativeAppSupportBase* native = new nsNativeAppSupportUnix(); ++ if (!native) ++ return NS_ERROR_OUT_OF_MEMORY; ++ ++ *aResult = native; ++ NS_ADDREF(*aResult); ++ ++ return NS_OK; ++}