[-]
[+]
|
Changed |
mozilla-xulrunner190.changes
|
|
[-]
[+]
|
Changed |
mozilla-xulrunner190.spec
^
|
|
[-]
[+]
|
Added |
gconf-backend.patch
^
|
@@ -0,0 +1,3388 @@
+diff -urN mozilla.orig/browser/installer/unix/packages-static mozilla/browser/installer/unix/packages-static
+--- mozilla.orig/browser/installer/unix/packages-static 2008-10-23 10:10:22.000000000 -0400
++++ mozilla/browser/installer/unix/packages-static 2008-10-23 10:11:15.000000000 -0400
+@@ -227,6 +227,7 @@
+ bin/components/pluginGlue.js
+ bin/components/extensions.xpt
+ bin/components/update.xpt
++bin/components/libsystem-pref-gconf.so
+ bin/components/nsSessionStartup.js
+ bin/components/nsSessionStore.js
+ bin/components/sessionstore.xpt
+diff -urN mozilla.orig/extensions/pref/system-pref/src/gconf/Makefile.in mozilla/extensions/pref/system-pref/src/gconf/Makefile.in
+--- mozilla.orig/extensions/pref/system-pref/src/gconf/Makefile.in 2008-10-23 10:10:13.000000000 -0400
++++ mozilla/extensions/pref/system-pref/src/gconf/Makefile.in 2008-10-23 10:11:29.000000000 -0400
+@@ -42,45 +42,46 @@
+
+ include $(DEPTH)/config/autoconf.mk
+
+-MODULE = system-pref
+-LIBRARY_NAME = system-pref
++MODULE = system-pref-gconf
++LIBRARY_NAME = system-pref-gconf
++GRE_MODULE = 1
++#MOZILLA_INTERNAL_API = 1
+ LIBXUL_LIBRARY = 1
+
++PACKAGE_FILE = gconf.pkg
++
+ REQUIRES = pref \
++ system-pref \
+ string \
+ xpcom \
+ embedcomponents \
++ necko \
+ $(NULL)
+
+ CPPSRCS = \
+ nsSystemPrefService.cpp \
+- nsSystemPrefFactory.cpp \
+ $(NULL)
+
+-SHARED_LIBRARY_LIBS = ../libsystem-pref_s.a
+
+ EXTRA_DSO_LDOPTS = \
+- -L$(DIST)/bin \
++ -L$(DIST)/lib -lxpcomglue_s \
+ $(MOZ_COMPONENT_LIBS) \
+ $(MOZ_GTK2_LIBS) \
++ $(MOZ_GCONF_LIBS) \
+ $(NULL)
+
++ #$(MOZ_XUL_LIBS) \
++
+ EXPORT_LIBRARY = 1
+ IS_COMPONENT = 1
+-MODULE_NAME = nsSystemPrefModule
+-
+-EXPORTS = \
+- nsSystemPrefService.h \
+- $(NULL)
++MODULE_NAME = nsSystemPrefServiceModule
+
++#FORCE_SHARED_LIB = 1
+ include $(topsrcdir)/config/rules.mk
+
+-CFLAGS += $(MOZ_GTK2_CFLAGS)
+-CXXFLAGS += $(MOZ_GTK2_CFLAGS)
+-
+-LOCAL_INCLUDES = -I$(srcdir)/..
++LOCAL_INCLUDES = $(MOZ_GTK2_CFLAGS) $(MOZ_GCONF_CFLAGS)
+
+-export::
+- $(INSTALL) $(srcdir)/../nsSystemPrefFactory.cpp .
++#CFLAGS += $(MOZ_GTK2_CFLAGS) $(MOZ_GCONF_CFLAGS)
++#CXXFLAGS += $(MOZ_GTK2_CFLAGS) $(MOZ_GCONF_CFLAGS)
+
+ GARBAGE += nsSystemPrefFactory.cpp
+diff -urN mozilla.orig/extensions/pref/system-pref/src/nsISystemPrefService.h mozilla/extensions/pref/system-pref/src/nsISystemPrefService.h
+--- mozilla.orig/extensions/pref/system-pref/src/nsISystemPrefService.h 1969-12-31 19:00:00.000000000 -0500
++++ mozilla/extensions/pref/system-pref/src/nsISystemPrefService.h 2008-10-23 10:11:15.000000000 -0400
+@@ -0,0 +1,107 @@
++/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
++/* vim:expandtab:shiftwidth=4:tabstop=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 mozilla.org code.
++ *
++ * The Initial Developer of the Original Code is Novell
++ * Portions created by Novell are Copyright (C) 2005 Novell,
++ * All Rights Reserved.
++ *
++ * Original Author: Robert O'Callahan (rocallahan@novell.com)
++ *
++ * Contributor(s):
++ *
++ * 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 NPL, 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 NPL, the GPL or the LGPL.
++ *
++ * ***** END LICENSE BLOCK ***** */
++
++#ifndef nsISystemPrefService_h__
++#define nsISystemPrefService_h__
++
++#include "nsCOMPtr.h"
++#include "nsIPrefBranchInternal.h"
++
++#define NS_SYSTEMPREF_SERVICE_CONTRACTID "@mozilla.org/system-preference-service;1"
++
++#define NS_ISYSTEMPREFSERVICE_IID \
++{ 0x006e1cfd, 0xd66a, 0x40b9, \
++ { 0x84, 0xa1, 0x84, 0xf3, 0xe6, 0xa2, 0xca, 0xbc } }
++
++class nsISystemPref {
++public:
++ /**
++ * Call one of these three methods to override a Mozilla
++ * preference with a system value. You can call it multiple
++ * times to change the value of a given preference to track
++ * the underlying system value.
++ *
++ * If aLocked is true then we set the default preference and
++ * lock it so the user value is ignored. If aLocked is false
++ * then we unlock the Mozilla preference and set the Mozilla
++ * user value.
++ */
++ virtual nsresult SetOverridingMozillaBoolPref(const char* aPrefName,
++ PRBool aValue, PRBool aLocked,
++ PRBool aPresent = PR_TRUE) = 0;
++ virtual nsresult SetOverridingMozillaIntPref(const char* aPrefName,
++ PRInt32 aValue, PRBool aLocked,
++ PRBool aPresent = PR_TRUE) = 0;
++ virtual nsresult SetOverridingMozillaStringPref(const char* aPrefName,
++ const char* aValue, PRBool aLocked,
++ PRBool aPresent = PR_TRUE) = 0;
++ virtual nsresult StopOverridingMozillaPref(const char* aPrefName) = 0;
++ virtual already_AddRefed<nsIPrefBranch2> GetPrefUserBranch() = 0;
++ virtual already_AddRefed<nsIPrefBranch> GetPrefDefaultBranch() = 0;
++};
++
++class nsISystemPrefService : public nsISupports {
++public:
++ NS_DECLARE_STATIC_IID_ACCESSOR(NS_ISYSTEMPREFSERVICE_IID)
++
++ /**
++ * Load the system prefs from the store into their corresponding
++ * Mozilla prefs, calling SetOverridingMozillaPref on each
++ * such pref.
++ */
++ virtual nsresult LoadSystemPreferences(nsISystemPref* aPrefs) = 0;
++
++ /**
++ * Notify that a Mozilla user pref that is being overridden by the
++ * store has changed. The new value of the Mozilla pref should be
++ * written back to the store.
++ */
++ virtual nsresult NotifyMozillaPrefChanged(const char* aPrefName) = 0;
++
++ /**
++ * Notify that we're about to stop using the system prefs. After
++ * this, nsSystemPref will automatically stop overriding all
++ * Mozilla prefs that are being overridden.
++ */
++ virtual nsresult NotifyUnloadSystemPreferences() = 0;
++};
++
++#endif
+diff -urN mozilla.orig/extensions/pref/system-pref/src/nsSystemPref.cpp mozilla/extensions/pref/system-pref/src/nsSystemPref.cpp
+--- mozilla.orig/extensions/pref/system-pref/src/nsSystemPref.cpp 2008-10-23 10:10:13.000000000 -0400
++++ mozilla/extensions/pref/system-pref/src/nsSystemPref.cpp 2008-10-23 10:11:15.000000000 -0400
+@@ -24,6 +24,7 @@
+ * Original Author: Bolian Yin (bolian.yin@sun.com)
+ *
+ * Contributor(s):
++ * Robert O'Callahan (rocallahan@novell.com)
+ *
+ * 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
|
[-]
[+]
|
Added |
gecko-lockdown.patch
^
|
@@ -0,0 +1,325 @@
+From: Robert O'Callahan
+Subject: Lockdown feature for Gecko
+References:
+
+
+diff --git a/mozilla/extensions/cookie/nsCookiePermission.cpp b/mozilla/extensions/cookie/nsCookiePermission.cpp
+index 0f8a64f..985d27a 100644
+--- a/mozilla/extensions/cookie/nsCookiePermission.cpp
++++ b/mozilla/extensions/cookie/nsCookiePermission.cpp
+@@ -85,6 +85,7 @@ static const char kCookiesPrefsMigrated[] = "network.cookie.prefsMigrated";
+ // obsolete pref names for migration
+ static const char kCookiesLifetimeEnabled[] = "network.cookie.lifetime.enabled";
+ static const char kCookiesLifetimeBehavior[] = "network.cookie.lifetime.behavior";
++static const char kCookiesHonorExceptions[] = "network.cookie.honorExceptions";
+ static const char kCookiesAskPermission[] = "network.cookie.warnAboutCookies";
+
+ static const char kPermissionType[] = "cookie";
+@@ -123,6 +124,7 @@ nsCookiePermission::Init()
+ prefBranch->AddObserver(kCookiesLifetimePolicy, this, PR_FALSE);
+ prefBranch->AddObserver(kCookiesLifetimeDays, this, PR_FALSE);
+ prefBranch->AddObserver(kCookiesAlwaysAcceptSession, this, PR_FALSE);
++ prefBranch->AddObserver(kCookiesHonorExceptions, this, PR_FALSE);
+ #ifdef MOZ_MAIL_NEWS
+ prefBranch->AddObserver(kCookiesDisabledForMailNews, this, PR_FALSE);
+ #endif
+@@ -179,6 +181,10 @@ nsCookiePermission::PrefChanged(nsIPrefBranch *aPrefBranch,
+ if (PREF_CHANGED(kCookiesAlwaysAcceptSession) &&
+ NS_SUCCEEDED(aPrefBranch->GetBoolPref(kCookiesAlwaysAcceptSession, &val)))
+ mCookiesAlwaysAcceptSession = val;
++
++ if (PREF_CHANGED(kCookiesHonorExceptions) &&
++ NS_SUCCEEDED(aPrefBranch->GetBoolPref(kCookiesHonorExceptions, &val)))
++ mCookiesHonorExceptions = val;
+
+ #ifdef MOZ_MAIL_NEWS
+ if (PREF_CHANGED(kCookiesDisabledForMailNews) &&
+@@ -244,6 +250,11 @@ nsCookiePermission::CanAccess(nsIURI *aURI,
+ #endif // MOZ_MAIL_NEWS
+
+ // finally, check with permission manager...
++ if (!mCookiesHonorExceptions) {
++ *aResult = ACCESS_DEFAULT;
++ return NS_OK;
++ }
++
+ nsresult rv = mPermMgr->TestPermission(aURI, kPermissionType, (PRUint32 *) aResult);
+ if (NS_SUCCEEDED(rv)) {
+ switch (*aResult) {
+diff --git a/mozilla/extensions/cookie/nsCookiePermission.h b/mozilla/extensions/cookie/nsCookiePermission.h
+index 2be46ba..753b731 100644
+--- a/mozilla/extensions/cookie/nsCookiePermission.h
++++ b/mozilla/extensions/cookie/nsCookiePermission.h
+@@ -57,10 +57,11 @@ public:
+ nsCookiePermission()
+ : mCookiesLifetimeSec(LL_MAXINT)
+ , mCookiesLifetimePolicy(0) // ACCEPT_NORMALLY
+- , mCookiesAlwaysAcceptSession(PR_FALSE)
++ , mCookiesAlwaysAcceptSession(PR_FALSE),
+ #ifdef MOZ_MAIL_NEWS
+- , mCookiesDisabledForMailNews(PR_TRUE)
++ , mCookiesDisabledForMailNews(PR_TRUE),
+ #endif
++ mCookiesHonorExceptions(PR_TRUE)
+ {}
+ virtual ~nsCookiePermission() {}
+
+@@ -76,7 +77,7 @@ private:
+ #ifdef MOZ_MAIL_NEWS
+ PRPackedBool mCookiesDisabledForMailNews;
+ #endif
+-
++ PRPackedBool mCookiesHonorExceptions;
+ };
+
+ // {EF565D0A-AB9A-4A13-9160-0644CDFD859A}
+diff --git a/mozilla/extensions/permissions/nsContentBlocker.cpp b/mozilla/extensions/permissions/nsContentBlocker.cpp
+index d9b5ad4..c7a0e28 100644
+--- a/mozilla/extensions/permissions/nsContentBlocker.cpp
++++ b/mozilla/extensions/permissions/nsContentBlocker.cpp
+@@ -76,6 +76,7 @@ NS_IMPL_ISUPPORTS3(nsContentBlocker,
+ nsContentBlocker::nsContentBlocker()
+ {
+ memset(mBehaviorPref, BEHAVIOR_ACCEPT, NUMBER_OF_TYPES);
++ memset(mHonorExceptions, PR_TRUE, NUMBER_OF_TYPES);
+ }
+
+ nsresult
+@@ -92,6 +93,11 @@ nsContentBlocker::Init()
+ rv = prefService->GetBranch("permissions.default.", getter_AddRefs(prefBranch));
+ NS_ENSURE_SUCCESS(rv, rv);
+
++ nsCOMPtr<nsIPrefBranch> honorExceptionsPrefBranch;
++ rv = prefService->GetBranch("permissions.honorExceptions.",
++ getter_AddRefs(honorExceptionsPrefBranch));
++ NS_ENSURE_SUCCESS(rv, rv);
++
+ // Migrate old image blocker pref
+ nsCOMPtr<nsIPrefBranch> oldPrefBranch;
+ oldPrefBranch = do_QueryInterface(prefService);
+@@ -121,8 +127,15 @@ nsContentBlocker::Init()
+ mPrefBranchInternal = do_QueryInterface(prefBranch, &rv);
+ NS_ENSURE_SUCCESS(rv, rv);
+
++ mHonorExceptionsPrefBranchInternal =
++ do_QueryInterface(honorExceptionsPrefBranch, &rv);
++ NS_ENSURE_SUCCESS(rv, rv);
++
+ rv = mPrefBranchInternal->AddObserver("", this, PR_TRUE);
+- PrefChanged(prefBranch, nsnull);
++ NS_ENSURE_SUCCESS(rv, rv);
++
++ rv = mHonorExceptionsPrefBranchInternal->AddObserver("", this, PR_TRUE);
++ PrefChanged(nsnull);
+
+ return rv;
+ }
+@@ -131,19 +144,22 @@ nsContentBlocker::Init()
+ #define LIMIT(x, low, high, default) ((x) >= (low) && (x) <= (high) ? (x) : (default))
+
+ void
+-nsContentBlocker::PrefChanged(nsIPrefBranch *aPrefBranch,
+- const char *aPref)
++nsContentBlocker::PrefChanged(const char *aPref)
+ {
+- PRInt32 val;
+-
+-#define PREF_CHANGED(_P) (!aPref || !strcmp(aPref, _P))
+-
+- for(PRUint32 i = 0; i < NUMBER_OF_TYPES; ++i) {
+- if (PREF_CHANGED(kTypeString[i]) &&
+- NS_SUCCEEDED(aPrefBranch->GetIntPref(kTypeString[i], &val)))
+- mBehaviorPref[i] = LIMIT(val, 1, 3, 1);
++ for (PRUint32 i = 0; i < NUMBER_OF_TYPES; ++i) {
++ if (!aPref || !strcmp(kTypeString[i], aPref)) {
++ PRInt32 val;
++ PRBool b;
++ if (mPrefBranchInternal &&
++ NS_SUCCEEDED(mPrefBranchInternal->GetIntPref(kTypeString[i], &val))) {
++ mBehaviorPref[i] = LIMIT(val, 1, 3, 1);
++ }
++ if (mHonorExceptionsPrefBranchInternal &&
++ NS_SUCCEEDED(mHonorExceptionsPrefBranchInternal->GetBoolPref(kTypeString[i], &b))) {
++ mHonorExceptions[i] = b;
++ }
++ }
+ }
+-
+ }
+
+ // nsIContentPolicy Implementation
+@@ -268,11 +284,13 @@ nsContentBlocker::TestPermission(nsIURI *aCurrentURI,
+ // default prefs.
+ // Don't forget the aContentType ranges from 1..8, while the
+ // array is indexed 0..7
+- PRUint32 permission;
+- nsresult rv = mPermissionManager->TestPermission(aCurrentURI,
+- kTypeString[aContentType - 1],
+- &permission);
+- NS_ENSURE_SUCCESS(rv, rv);
++ PRUint32 permission = 0;
++ if (mHonorExceptions[aContentType - 1]) {
++ nsresult rv = mPermissionManager->TestPermission(aCurrentURI,
++ kTypeString[aContentType - 1],
++ &permission);
++ NS_ENSURE_SUCCESS(rv, rv);
++ }
+
+ // If there is nothing on the list, use the default.
+ if (!permission) {
+@@ -298,7 +316,7 @@ nsContentBlocker::TestPermission(nsIURI *aCurrentURI,
+ return NS_OK;
+
+ PRBool trustedSource = PR_FALSE;
+- rv = aFirstURI->SchemeIs("chrome", &trustedSource);
++ nsresult rv = aFirstURI->SchemeIs("chrome", &trustedSource);
+ NS_ENSURE_SUCCESS(rv,rv);
+ if (!trustedSource) {
+ rv = aFirstURI->SchemeIs("resource", &trustedSource);
+@@ -363,8 +381,6 @@ nsContentBlocker::Observe(nsISupports *aSubject,
+ {
+ NS_ASSERTION(!strcmp(NS_PREFBRANCH_PREFCHANGE_TOPIC_ID, aTopic),
+ "unexpected topic - we only deal with pref changes!");
+-
+- if (mPrefBranchInternal)
+- PrefChanged(mPrefBranchInternal, NS_LossyConvertUTF16toASCII(aData).get());
++ PrefChanged(NS_LossyConvertUTF16toASCII(aData).get());
+ return NS_OK;
+ }
+diff --git a/mozilla/extensions/permissions/nsContentBlocker.h b/mozilla/extensions/permissions/nsContentBlocker.h
+index d48eeb5..07779ff 100644
+--- a/mozilla/extensions/permissions/nsContentBlocker.h
++++ b/mozilla/extensions/permissions/nsContentBlocker.h
+@@ -66,7 +66,7 @@ public:
+ private:
+ ~nsContentBlocker() {}
+
+- void PrefChanged(nsIPrefBranch *, const char *);
++ void PrefChanged(const char *);
+ nsresult TestPermission(nsIURI *aCurrentURI,
|
[-]
[+]
|
Added |
mozilla-aboutAbout.patch
^
|
@@ -0,0 +1,34 @@
+From: Mike Hommey
+Subject: about:about throws 404
+References:
+https://bugzilla.mozilla.org/show_bug.cgi?id=349451
+https://bugzilla.novell.com/show_bug.cgi?id=402699
+
+--- docshell/base/nsAboutRedirector.cpp
++++ docshell/base/nsAboutRedirector.cpp
+@@ -85,7 +85,9 @@ static RedirEntry kRedirMap[] = {
+ nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT },
+ { "licence", "chrome://global/content/license.html",
+ nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT },
++#ifndef MOZ_XUL_APP
+ { "about", "chrome://global/content/aboutAbout.html", 0 },
++#endif
+ { "neterror", "chrome://global/content/netError.xhtml",
+ nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT |
+ nsIAboutModule::ALLOW_SCRIPT }
+--- docshell/build/nsDocShellModule.cpp
++++ docshell/build/nsDocShellModule.cpp
+@@ -205,11 +205,13 @@ static const nsModuleComponentInfo gDocShellModuleInfo[] = {
+ NS_ABOUT_MODULE_CONTRACTID_PREFIX "licence",
+ nsAboutRedirector::Create
+ },
++#ifndef MOZ_XUL_APP
+ { "about:about",
+ NS_ABOUT_REDIRECTOR_MODULE_CID,
+ NS_ABOUT_MODULE_CONTRACTID_PREFIX "about",
+ nsAboutRedirector::Create
+ },
++#endif
+ { "about:neterror",
+ NS_ABOUT_REDIRECTOR_MODULE_CID,
+ NS_ABOUT_MODULE_CONTRACTID_PREFIX "neterror",
|
[-]
[+]
|
Added |
mozilla-helper-app.patch
^
|
@@ -0,0 +1,129 @@
+From: Wolfgang Rosenauer <wr@rosenauer.org>
+Subject: no helper app for application/octet-stream but recognized extensions
+References:
+https://bugzilla.novell.com/show_bug.cgi?id=406979
+https://bugzilla.mozilla.org/show_bug.cgi?id=327323
+
+Index: uriloader/exthandler/nsMIMEInfoImpl.cpp
+===================================================================
+RCS file: /cvsroot/mozilla/uriloader/exthandler/nsMIMEInfoImpl.cpp,v
+retrieving revision 1.69
+diff -u -p -6 -r1.69 nsMIMEInfoImpl.cpp
+--- uriloader/exthandler/nsMIMEInfoImpl.cpp 19 Oct 2007 04:15:43 -0000 1.69
++++ uriloader/exthandler/nsMIMEInfoImpl.cpp 20 Aug 2008 15:45:32 -0000
+@@ -408,13 +408,13 @@ nsMIMEInfoBase::LaunchWithURI(nsIURI* aU
+ }
+
+ void
+ nsMIMEInfoBase::CopyBasicDataTo(nsMIMEInfoBase* aOther)
+ {
+ aOther->mType = mType;
+- aOther->mDefaultAppDescription = mDefaultAppDescription;
++ //aOther->mDefaultAppDescription = mDefaultAppDescription;
+ aOther->mExtensions = mExtensions;
+
+ aOther->mMacType = mMacType;
+ aOther->mMacCreator = mMacCreator;
+ }
+
+Index: uriloader/exthandler/unix/nsMIMEInfoUnix.cpp
+===================================================================
+RCS file: /cvsroot/mozilla/uriloader/exthandler/unix/nsMIMEInfoUnix.cpp,v
+retrieving revision 1.5
+diff -u -p -6 -r1.5 nsMIMEInfoUnix.cpp
+--- uriloader/exthandler/unix/nsMIMEInfoUnix.cpp 8 Apr 2008 23:18:16 -0000 1.5
++++ uriloader/exthandler/unix/nsMIMEInfoUnix.cpp 20 Aug 2008 15:45:32 -0000
+@@ -37,49 +37,63 @@
+ *
+ * ***** END LICENSE BLOCK ***** */
+
+ #include "nsMIMEInfoUnix.h"
+ #include "nsGNOMERegistry.h"
+ #include "nsIGnomeVFSService.h"
++#include "nsAutoPtr.h"
+
+ nsresult
+ nsMIMEInfoUnix::LoadUriInternal(nsIURI * aURI)
+ {
+ return nsGNOMERegistry::LoadURL(aURI);
+ }
+
+ NS_IMETHODIMP
+ nsMIMEInfoUnix::GetHasDefaultHandler(PRBool *_retval)
+ {
+ *_retval = PR_FALSE;
+- nsCOMPtr<nsIGnomeVFSService> vfs = do_GetService(NS_GNOMEVFSSERVICE_CONTRACTID);
+- if (vfs) {
+- nsCOMPtr<nsIGnomeVFSMimeApp> app;
+- if (NS_SUCCEEDED(vfs->GetAppForMimeType(mType, getter_AddRefs(app))) && app)
+- *_retval = PR_TRUE;
++ nsRefPtr<nsMIMEInfoBase> mimeInfo = nsGNOMERegistry::GetFromType(mType);
++ if (!mimeInfo) {
++ nsCAutoString ext;
++ GetPrimaryExtension(ext);
++ mimeInfo = nsGNOMERegistry::GetFromExtension(ext);
+ }
+
++ if (mimeInfo)
++ *_retval = PR_TRUE;
++
+ if (*_retval)
+ return NS_OK;
+
+ // If we didn't find a VFS handler, fallback.
+ return nsMIMEInfoImpl::GetHasDefaultHandler(_retval);
+ }
+
+ nsresult
+ nsMIMEInfoUnix::LaunchDefaultWithFile(nsIFile *aFile)
+ {
+ nsCAutoString nativePath;
+ aFile->GetNativePath(nativePath);
+-
++
+ nsCOMPtr<nsIGnomeVFSService> vfs = do_GetService(NS_GNOMEVFSSERVICE_CONTRACTID);
+
+ if (vfs) {
+ nsCOMPtr<nsIGnomeVFSMimeApp> app;
+ if (NS_SUCCEEDED(vfs->GetAppForMimeType(mType, getter_AddRefs(app))) && app)
+ return app->Launch(nativePath);
++
++ // If we haven't got an app we try to get a valid one by searching for the
++ // extension mapped type
++ nsRefPtr<nsMIMEInfoBase> mimeInfo = nsGNOMERegistry::GetFromExtension(nativePath);
++ if (mimeInfo) {
++ nsCAutoString type;
++ mimeInfo->GetType(type);
++ if (NS_SUCCEEDED(vfs->GetAppForMimeType(type, getter_AddRefs(app))) && app)
++ return app->Launch(nativePath);
++ }
+ }
+
+ if (!mDefaultApplication)
+ return NS_ERROR_FILE_NOT_FOUND;
+
+ return LaunchWithIProcess(mDefaultApplication, nativePath);
+Index: uriloader/exthandler/unix/nsOSHelperAppService.cpp
+===================================================================
+RCS file: /cvsroot/mozilla/uriloader/exthandler/unix/nsOSHelperAppService.cpp,v
+retrieving revision 1.74
+diff -u -p -6 -r1.74 nsOSHelperAppService.cpp
+--- uriloader/exthandler/unix/nsOSHelperAppService.cpp 20 Feb 2008 06:10:33 -0000 1.74
++++ uriloader/exthandler/unix/nsOSHelperAppService.cpp 20 Aug 2008 15:45:33 -0000
+@@ -1621,12 +1621,16 @@ nsOSHelperAppService::GetMIMEInfoFromOS(
+
+ return retval;
+ }
+
+ // Copy the attributes of retval onto miByExt, to return it
+ retval->CopyBasicDataTo(miByExt);
++ // But set the extensions primary since CopyBasicDataTo overwrites the
++ // list
++ if (!aFileExt.IsEmpty())
++ retval->SetPrimaryExtension(aFileExt);
+
+ miByExt.swap(retval);
+ }
+ return retval;
+ }
+
|
[-]
[+]
|
Deleted |
mozilla-network-status.patch
^
|
@@ -1,75 +0,0 @@
-From: Wolfgang Rosenauer
-Subject: Make it possible to ignore NetworkManager status
-References:
-https://bugzilla.mozilla.org/show_bug.cgi?id=424626
-
-Index: toolkit/system/dbus/nsNetworkManagerListener.cpp
-===================================================================
-RCS file: /cvsroot/mozilla/toolkit/system/dbus/nsNetworkManagerListener.cpp,v
-retrieving revision 1.2
-diff -u -p -6 -r1.2 nsNetworkManagerListener.cpp
---- toolkit/system/dbus/nsNetworkManagerListener.cpp 8 Jul 2007 07:08:45 -0000 1.2
-+++ toolkit/system/dbus/nsNetworkManagerListener.cpp 26 May 2008 22:12:41 -0000
-@@ -42,12 +42,14 @@
- #include "nsNetworkManagerListener.h"
-
- #include "nsNetCID.h"
- #include "nsServiceManagerUtils.h"
- #include "nsIObserverService.h"
- #include "nsStringAPI.h"
-+#include "nsIPrefBranch2.h"
-+#include "nsIPrefService.h"
-
- // Define NetworkManager API constants. This avoids a dependency on
- // NetworkManager-devel.
- #define NM_DBUS_SERVICE "org.freedesktop.NetworkManager"
- #define NM_DBUS_PATH "/org/freedesktop/NetworkManager"
- #define NM_DBUS_INTERFACE "org.freedesktop.NetworkManager"
-@@ -184,13 +187,23 @@ nsNetworkManagerListener::HandleMessage(
- void
- nsNetworkManagerListener::UpdateNetworkStatus(DBusMessage* msg) {
- PRInt32 result;
- if (!dbus_message_get_args(msg, NULL, DBUS_TYPE_UINT32, &result,
- DBUS_TYPE_INVALID))
- return;
--
-+
-+ // Don't update status if disabled by pref
-+ nsCOMPtr<nsIPrefBranch2> prefs =
-+ do_GetService(NS_PREFSERVICE_CONTRACTID);
-+ if (prefs) {
-+ PRBool ignore = PR_FALSE;
-+ prefs->GetBoolPref("toolkit.networkmanager.disable", &ignore);
-+ if (ignore)
-+ return;
-+ }
-+
- mNetworkManagerActive = PR_TRUE;
-
- PRBool wasUp = mLinkUp;
- mLinkUp = result == NM_STATE_CONNECTED;
- if (wasUp == mLinkUp)
- return;
-Index: modules/libpref/src/init/all.js
-===================================================================
-RCS file: /cvsroot/mozilla/modules/libpref/src/init/all.js,v
-retrieving revision 3.758
-diff -u -p -6 -r3.758 all.js
---- modules/libpref/src/init/all.js 2 May 2008 06:27:27 -0000 3.758
-+++ modules/libpref/src/init/all.js 29 May 2008 13:06:01 -0000
-@@ -2247,12 +2247,15 @@ pref("autocomplete.grab_during_popup", t
- pref("autocomplete.ungrab_during_mode_switch", true);
-
- // Default to using the system filepicker if possible, but allow
- // toggling to use the XUL filepicker
- pref("ui.allow_platform_file_picker", true);
-
-+// should NetworkManager be authoritative for online/offline status?
-+pref("toolkit.networkmanager.disable", false);
-+
- pref("helpers.global_mime_types_file", "/etc/mime.types");
- pref("helpers.global_mailcap_file", "/etc/mailcap");
- pref("helpers.private_mime_types_file", "~/.mime.types");
- pref("helpers.private_mailcap_file", "~/.mailcap");
- pref("java.global_java_version_file", "/etc/.java/versions");
- pref("java.private_java_version_file", "~/.java/versions");
|
[-]
[+]
|
Added |
mozilla-pyxpcom.patch
^
|
@@ -0,0 +1,65 @@
+Index: config/system-headers
+===================================================================
+RCS file: /cvsroot/mozilla/config/system-headers,v
+retrieving revision 3.40
+diff -u -p -6 -r3.40 system-headers
+--- config/system-headers 17 Mar 2008 18:02:08 -0000 3.40
++++ config/system-headers 27 Aug 2008 12:08:18 -0000
+@@ -571,12 +571,13 @@ proto/dos.h
+ proto/exec.h
+ psap.h
+ Pt.h
+ pthread.h
+ pwd.h
+ Python.h
++marshal.h
+ QDOffscreen.h
+ Quickdraw.h
+ QuickDraw.h
+ QuickTimeComponents.h
+ quipu/attr.h
+ rasdlg.h
+Index: extensions/python/dom/test/pyxultest/Makefile.in
+===================================================================
+RCS file: /cvsroot/mozilla/extensions/python/dom/test/pyxultest/Makefile.in,v
+retrieving revision 1.3
+diff -u -p -6 -r1.3 Makefile.in
+--- extensions/python/dom/test/pyxultest/Makefile.in 19 Jun 2006 23:13:14 -0000 1.3
++++ extensions/python/dom/test/pyxultest/Makefile.in 27 Aug 2008 15:42:08 -0000
+@@ -52,11 +52,14 @@ XPI_NAME = pyxultest
+ # Do I really want these?
+ #USE_EXTENSION_MANIFEST = 1
+ #NO_JAR_AUTO_REG = 1
+ #INSTALL_EXTENSION_ID = pyxultest@mozilla.org
+ #XPI_PKGNAME = pyxultest-$(MOZ_APP_VERSION)
+ DIST_FILES = application.ini
++
++GRE_BUILDID = $(shell $(PYTHON) $(topsrcdir)/config/printconfigsetting.py $(LIBXUL_DIST)/bin/platform.ini Build BuildID)
++DEFINES += -DGRE_BUILDID=$(GRE_BUILDID)
+ endif
+
+ PREF_JS_EXPORTS = $(srcdir)/pyxultest-prefs.js
+
+ include $(topsrcdir)/config/rules.mk
+Index: extensions/python/dom/test/pyxultest/application.ini
+===================================================================
+RCS file: /cvsroot/mozilla/extensions/python/dom/test/pyxultest/application.ini,v
+retrieving revision 1.2
+diff -u -p -6 -r1.2 application.ini
+--- extensions/python/dom/test/pyxultest/application.ini 29 Apr 2006 01:56:36 -0000 1.2
++++ extensions/python/dom/test/pyxultest/application.ini 27 Aug 2008 15:42:08 -0000
+@@ -12,13 +12,13 @@ Name=pyxultest
+
+ ; This field specifies your application's version. This field is required.
+ Version=1.0
+
+ ; This field specifies your application's build ID (timestamp). This field is
+ ; required.
+-BuildID=@BUILD_ID@
++BuildID=@GRE_BUILDID@
+
+ ; This field specifies a compact copyright notice for your application. This
+ ; field is optional.
+ Copyright=Copyright (c) 2006 Mozilla.org
+
+ ; This ID is just an example. Every XUL app ought to have it's own unique ID.
|
[-]
[+]
|
Added |
mozilla-shared-nss-db.patch
^
|
@@ -0,0 +1,209 @@
+diff --git a/config/autoconf.mk.in b/config/autoconf.mk.in
+index 534460a..b4f638c 100644
+--- a/config/autoconf.mk.in
++++ b/config/autoconf.mk.in
+@@ -534,6 +534,9 @@ LIBIDL_CFLAGS = @LIBIDL_CFLAGS@
+ LIBIDL_LIBS = @LIBIDL_LIBS@
+ STATIC_LIBIDL = @STATIC_LIBIDL@
+
++NSSHELPER_CFLAGS = @NSSHELPER_CFLAGS@
++NSSHELPER_LIBS = @NSSHELPER_LIBS@
++
+ MOZ_NATIVE_MAKEDEPEND = @SYSTEM_MAKEDEPEND@
+
+ # Used for LD_LIBRARY_PATH
+diff --git a/configure b/configure
+index 0b03543..0c902e7 100755
+--- a/configure
++++ b/configure
+@@ -20335,6 +20335,100 @@ fi
+
+
+
++succeeded=no
++
++if test -z "$PKG_CONFIG"; then
++ # Extract the first word of "pkg-config", so it can be a program name with args.
++set dummy pkg-config; ac_word=$2
++echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
++echo "configure:20250: checking for $ac_word" >&5
++if eval "test \"`echo '$''{'ac_cv_path_PKG_CONFIG'+set}'`\" = set"; then
++ echo $ac_n "(cached) $ac_c" 1>&6
++else
++ case "$PKG_CONFIG" in
++ /*)
++ ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path.
++ ;;
++ ?:/*)
++ ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a dos path.
++ ;;
++ *)
++ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
++ ac_dummy="$PATH"
++ for ac_dir in $ac_dummy; do
++ test -z "$ac_dir" && ac_dir=.
++ if test -f $ac_dir/$ac_word; then
++ ac_cv_path_PKG_CONFIG="$ac_dir/$ac_word"
++ break
++ fi
++ done
++ IFS="$ac_save_ifs"
++ test -z "$ac_cv_path_PKG_CONFIG" && ac_cv_path_PKG_CONFIG="no"
++ ;;
++esac
++fi
++PKG_CONFIG="$ac_cv_path_PKG_CONFIG"
++if test -n "$PKG_CONFIG"; then
++ echo "$ac_t""$PKG_CONFIG" 1>&6
++else
++ echo "$ac_t""no" 1>&6
++fi
++
++ fi
++
++ if test "$PKG_CONFIG" = "no" ; then
++ echo "*** The pkg-config script could not be found. Make sure it is"
++ echo "*** in your path, or set the PKG_CONFIG environment variable"
++ echo "*** to the full path to pkg-config."
++ echo "*** Or see http://www.freedesktop.org/software/pkgconfig to get pkg-config."
++ else
++ PKG_CONFIG_MIN_VERSION=0.9.0
++ if $PKG_CONFIG --atleast-pkgconfig-version $PKG_CONFIG_MIN_VERSION; then
++ echo $ac_n "checking for nss-shared-helper""... $ac_c" 1>&6
++echo "configure:20294: checking for nss-shared-helper" >&5
++
++ if $PKG_CONFIG --exists "nss-shared-helper" ; then
++ echo "$ac_t""yes" 1>&6
++ succeeded=yes
++
++ echo $ac_n "checking NSSHELPER_CFLAGS""... $ac_c" 1>&6
++echo "configure:20301: checking NSSHELPER_CFLAGS" >&5
++ NSSHELPER_CFLAGS=`$PKG_CONFIG --cflags "nss-shared-helper"`
++ echo "$ac_t""$NSSHELPER_CFLAGS" 1>&6
++
++ echo $ac_n "checking NSSHELPER_LIBS""... $ac_c" 1>&6
++echo "configure:20306: checking NSSHELPER_LIBS" >&5
++ ## Remove evil flags like -Wl,--export-dynamic
++ NSSHELPER_LIBS="`$PKG_CONFIG --libs \"nss-shared-helper\" |sed s/-Wl,--export-dynamic//g`"
++ echo "$ac_t""$NSSHELPER_LIBS" 1>&6
++ else
++ NSSHELPER_CFLAGS=""
++ NSSHELPER_LIBS=""
++ ## If we have a custom action on failure, don't print errors, but
++ ## do set a variable so people can do so.
++ NSSHELPER_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "nss-shared-helper"`
++ echo $NSSHELPER_PKG_ERRORS
++ fi
++
++
++
++ else
++ echo "*** Your version of pkg-config is too old. You need version $PKG_CONFIG_MIN_VERSION or newer."
++ echo "*** See http://www.freedesktop.org/software/pkgconfig"
++ fi
++ fi
++
++ if test $succeeded = yes; then
++ :
++ else
++ if test "$COMPILE_ENVIRONMENT"; then
++ { echo "configure: error: Library requirements (nss-shared-helper) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard prefix so pkg-config can find them." 1>&2; exit 1; }
++ fi
++ fi
++
++
++
++
+
+
+ # Check whether --enable-xul or --disable-xul was given.
+@@ -21641,6 +21735,8 @@ s%@MOZ_CAIRO_LIBS@%$MOZ_CAIRO_LIBS%g
+ s%@LCMS_CFLAGS@%$LCMS_CFLAGS%g
+ s%@LCMS_LIBS@%$LCMS_LIBS%g
+ s%@MOZ_NATIVE_LCMS@%$MOZ_NATIVE_LCMS%g
++s%@NSSHELPER_CFLAGS@%$NSSHELPER_CFLAGS%g
++s%@NSSHELPER_LIBS@%$NSSHELPER_LIBS%g
+ s%@MOZ_XUL@%$MOZ_XUL%g
+ s%@MOZ_PYTHON_EXTENSIONS@%$MOZ_PYTHON_EXTENSIONS%g
+ s%@MOZ_PYTHON@%$MOZ_PYTHON%g
+diff --git a/configure.in b/configure.in
+index bc72aff..8968a4a 100644
+--- a/configure.in
++++ b/configure.in
+@@ -7451,6 +7451,15 @@ AC_SUBST(LCMS_CFLAGS)
+ AC_SUBST(LCMS_LIBS)
+
+ dnl ========================================================
++dnl Check for nss-shared-helper
++dnl ========================================================
++
++PKG_CHECK_MODULES(NSSHELPER, nss-shared-helper)
++
++AC_SUBST(NSSHELPER_CFLAGS)
++AC_SUBST(NSSHELPER_LIBS)
++
++dnl ========================================================
+ dnl disable xul
+ dnl ========================================================
+ MOZ_ARG_DISABLE_BOOL(xul,
+diff --git a/security/manager/ssl/src/Makefile.in b/security/manager/ssl/src/Makefile.in
+index 031be55..c673e46 100644
+--- a/security/manager/ssl/src/Makefile.in
++++ b/security/manager/ssl/src/Makefile.in
+@@ -139,12 +139,13 @@ DEFINES += -DNSS_ENABLE_ECC
+
+ # Use local includes because they are inserted before INCLUDES
+ # so that Mozilla's nss.h is used, not glibc's
+-LOCAL_INCLUDES += $(NSS_CFLAGS)
++LOCAL_INCLUDES += $(NSS_CFLAGS) $(NSSHELPER_CFLAGS)
+
+ EXTRA_DSO_LDOPTS += \
+ $(MOZ_UNICHARUTIL_LIBS) \
+ $(MOZ_COMPONENT_LIBS) \
+ $(MOZ_JS_LIBS) \
++ $(NSSHELPER_LIBS) \
+ $(NSS_LIBS) \
+ $(NULL)
+
+diff --git a/security/manager/ssl/src/nsNSSComponent.cpp b/security/manager/ssl/src/nsNSSComponent.cpp
+index 45adcb9..925fd8d 100644
+--- a/security/manager/ssl/src/nsNSSComponent.cpp
++++ b/security/manager/ssl/src/nsNSSComponent.cpp
+@@ -44,6 +44,10 @@
+ *
+ * ***** END LICENSE BLOCK ***** */
+
++#pragma GCC visibility push(default)
++#include <nss-shared-helper.h>
++#pragma GCC visibility pop
++
+ #include "nsNSSComponent.h"
+ #include "nsNSSCallbacks.h"
+ #include "nsNSSIOLayer.h"
+@@ -1545,7 +1549,12 @@ nsNSSComponent::InitializeNSS(PRBool showWarningBox)
+
+ ConfigureInternalPKCS11Token();
+
+- SECStatus init_rv = ::NSS_InitReadWrite(profileStr.get());
++ SECStatus init_rv = ::nsshelp_open_db ("mozilla-xul", profileStr.get(), 0);
++
++ if (init_rv != SECSuccess) {
++ PR_LOG(gPIPNSSLog, PR_LOG_DEBUG, ("can not init NSS using nsshelp_open_db in %s\n", profileStr.get()));
++ init_rv = ::NSS_InitReadWrite(profileStr.get());
++ }
+
+ if (init_rv != SECSuccess) {
+ PR_LOG(gPIPNSSLog, PR_LOG_DEBUG, ("can not init NSS r/w in %s\n", profileStr.get()));
+diff --git a/toolkit/library/Makefile.in b/toolkit/library/Makefile.in
+index 7b00f11..6aed115 100644
+--- a/toolkit/library/Makefile.in
|
[-]
[+]
|
Changed |
mozilla-sqlite-req.patch
^
|
@@ -9,7 +9,7 @@
STARTUP_NOTIFICATION_VERSION=0.8
DBUS_VERSION=0.60
LCMS_VERSION=1.17
--SQLITE_VERSION=3.5.4
+-SQLITE_VERSION=3.5.9
+SQLITE_VERSION=3.5
MSMANIFEST_TOOL=
|
|
Changed |
mozilla-system-hunspell.patch.bz2
^
|
[-]
[+]
|
Added |
toolkit-ui-lockdown.patch
^
|
@@ -0,0 +1,41 @@
+From: Robert O'Callahan
+Subject: Lockdown feature for Toolkit UI
+References:
+
+
+diff --git a/mozilla/toolkit/components/printing/content/printdialog.js b/mozilla/toolkit/components/printing/content/printdialog.js
+index 3e674af..50e99c0 100644
+--- a/mozilla/toolkit/components/printing/content/printdialog.js
++++ b/mozilla/toolkit/components/printing/content/printdialog.js
+@@ -50,6 +50,7 @@ var gPrintSettings = null;
+ var gWebBrowserPrint = null;
+ var gPrintSetInterface = Components.interfaces.nsIPrintSettings;
+ var doDebug = false;
++var gPrefService = null;
+
+ //---------------------------------------------------
+ function initDialog()
+@@ -87,11 +88,23 @@ function initDialog()
+ dialog.fpDialog = document.getElementById("fpDialog");
+
+ dialog.enabled = false;
++
++ gPrefService = Components.classes["@mozilla.org/preferences-service;1"]
++ .getService(Components.interfaces.nsIPrefService).getBranch(null);
++ if (gPrefService.getBoolPref("config.lockdown.savepage")) {
++ dialog.fileCheck.setAttribute("disabled", "true");
++ }
++ if (gPrefService.getBoolPref("config.lockdown.printing")) {
++ dialog.printButton.setAttribute("disabled", "true");
++ }
+ }
+
+ //---------------------------------------------------
+ function checkInteger(element)
+ {
++ if (gPrefService.getBoolPref("config.lockdown.printing"))
++ return;
++
+ var value = element.value;
+ if (value && value.length > 0) {
+ value = value.replace(/[^0-9]/g,"");
|
[-]
[+]
|
Changed |
baselibs.conf
^
|
@@ -1,9 +1,13 @@
mozilla-xulrunner190
+/usr/lib(64)?/xulrunner-.*
+/etc/gre.d/.*
+ recommends "mozilla-xulrunner190-gnomevfs-<targettype>"
-mozilla-xulrunner190-lang
+mozilla-xulrunner190-translations
+/usr/lib(64)?/xulrunner-.*
+ prereq "mozilla-xulrunner190-<targettype> = <version>"
+ supplements "packageand(mozilla-xulrunner190-translations:mozilla-xulrunner190-<targettype>)"
mozilla-xulrunner190-gnomevfs
+/usr/lib(64)?/xulrunner-.*
+ prereq "mozilla-xulrunner190-<targettype> = <version>"
|
|
Changed |
l10n-1.9.0.4.tar.bz2
^
|
[-]
[+]
|
Added |
mozilla-xulrunner190-rpmlintrc
^
|
@@ -0,0 +1 @@
+addFilter("no-jar-manifest")
|
|
Changed |
xulrunner-source-1.9.0.4.tar.bz2
^
|