Accepting request 20944 from mozilla:Factory
Copy from mozilla:Factory/MozillaThunderbird based on submit request 20944 from user wrosenauer OBS-URL: https://build.opensuse.org/request/show/20944 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/MozillaThunderbird?expand=0&rev=39
This commit is contained in:
commit
d555563f17
@ -1,3 +1,11 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Sep 15 17:58:56 CEST 2009 - wr@rosenauer.org
|
||||||
|
|
||||||
|
- update to 3.0b4
|
||||||
|
* removed upstreamed patches
|
||||||
|
* based on Gecko 1.9.1.3 (inheriting security fixes)
|
||||||
|
* new global search
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Tue Aug 25 17:56:36 CEST 2009 - wr@rosenauer.org
|
Tue Aug 25 17:56:36 CEST 2009 - wr@rosenauer.org
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# spec file for package MozillaThunderbird (Version 3.0b3)
|
# spec file for package MozillaThunderbird (Version 3.0b4)
|
||||||
#
|
#
|
||||||
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
||||||
# Copyright (c) 2009 Wolfgang Rosenauer <wr@rosenauer.org>
|
# Copyright (c) 2009 Wolfgang Rosenauer <wr@rosenauer.org>
|
||||||
@ -28,9 +28,9 @@ BuildRequires: hunspell-devel
|
|||||||
BuildRequires: nss-shared-helper-devel
|
BuildRequires: nss-shared-helper-devel
|
||||||
%endif
|
%endif
|
||||||
License: GPL v2 or later ; LGPL v2.1 or later ; MPL 1.1 or later
|
License: GPL v2 or later ; LGPL v2.1 or later ; MPL 1.1 or later
|
||||||
%define mainversion 3.0b3
|
%define mainversion 3.0b4
|
||||||
Version: %{mainversion}
|
Version: %{mainversion}
|
||||||
Release: 5
|
Release: 1
|
||||||
Summary: The Stand-Alone Mozilla Mail Component
|
Summary: The Stand-Alone Mozilla Mail Component
|
||||||
Url: http://www.mozilla.org/products/thunderbird/
|
Url: http://www.mozilla.org/products/thunderbird/
|
||||||
Group: Productivity/Networking/Email/Clients
|
Group: Productivity/Networking/Email/Clients
|
||||||
@ -39,18 +39,15 @@ Source1: MozillaThunderbird.desktop
|
|||||||
Source2: add-plugins.sh.in
|
Source2: add-plugins.sh.in
|
||||||
Source3: mozilla.sh.in
|
Source3: mozilla.sh.in
|
||||||
Source4: l10n-%{version}.tar.bz2
|
Source4: l10n-%{version}.tar.bz2
|
||||||
Source5: shipped-locales
|
#Source5: shipped-locales
|
||||||
Source6: suse-default-prefs.js
|
Source6: suse-default-prefs.js
|
||||||
Source7: find-external-requires.sh
|
Source7: find-external-requires.sh
|
||||||
Source8: MozillaThunderbird-rpmlintrc
|
Source8: MozillaThunderbird-rpmlintrc
|
||||||
Source9: enigmail-20090813.tar.bz2
|
Source9: enigmail-20090813.tar.bz2
|
||||||
Source10: create-tar.sh
|
Source10: create-tar.sh
|
||||||
Patch1: mozilla-app-launcher.patch
|
|
||||||
Patch2: thunderbird-appname.patch
|
Patch2: thunderbird-appname.patch
|
||||||
Patch3: mozilla-jemalloc_deepbind.patch
|
|
||||||
Patch4: mozilla-gtkfilepicker-buttonorder.patch
|
Patch4: mozilla-gtkfilepicker-buttonorder.patch
|
||||||
Patch5: tb-develdirs.patch
|
Patch5: tb-develdirs.patch
|
||||||
Patch6: mozilla-protocol_handler.patch
|
|
||||||
Patch7: mozilla-path_len.patch
|
Patch7: mozilla-path_len.patch
|
||||||
Patch9: mozilla-shared-nss-db.patch
|
Patch9: mozilla-shared-nss-db.patch
|
||||||
Patch10: mozilla-system-hunspell.patch.bz2
|
Patch10: mozilla-system-hunspell.patch.bz2
|
||||||
@ -73,7 +70,7 @@ PreReq: coreutils fileutils textutils /bin/sh
|
|||||||
%global __find_provides %provfind
|
%global __find_provides %provfind
|
||||||
Requires: mozilla-nspr >= %(rpm -q --queryformat '%{VERSION}' mozilla-nspr)
|
Requires: mozilla-nspr >= %(rpm -q --queryformat '%{VERSION}' mozilla-nspr)
|
||||||
Requires: mozilla-nss >= %(rpm -q --queryformat '%{VERSION}' mozilla-nss)
|
Requires: mozilla-nss >= %(rpm -q --queryformat '%{VERSION}' mozilla-nss)
|
||||||
%define releasedate 2009071500
|
%define releasedate 2009091500
|
||||||
%define progname thunderbird
|
%define progname thunderbird
|
||||||
%define progdir %{_prefix}/%_lib/thunderbird
|
%define progdir %{_prefix}/%_lib/thunderbird
|
||||||
%define libgssapi libgssapi_krb5.so.2
|
%define libgssapi libgssapi_krb5.so.2
|
||||||
@ -140,7 +137,7 @@ This package contains the Lightning calendar extension for Mozilla Thunderbird.
|
|||||||
|
|
||||||
%package -n enigmail
|
%package -n enigmail
|
||||||
Version: 0.96.99
|
Version: 0.96.99
|
||||||
Release: 1
|
Release: 2
|
||||||
License: GPL v2 or later ; MPL
|
License: GPL v2 or later ; MPL
|
||||||
Summary: OpenPGP addon for Thunderbird and SeaMonkey
|
Summary: OpenPGP addon for Thunderbird and SeaMonkey
|
||||||
Group: Productivity/Networking/Email/Clients
|
Group: Productivity/Networking/Email/Clients
|
||||||
@ -166,10 +163,7 @@ popd
|
|||||||
%endif
|
%endif
|
||||||
# xulrunner patches
|
# xulrunner patches
|
||||||
pushd mozilla
|
pushd mozilla
|
||||||
%patch1 -p1
|
|
||||||
%patch3 -p1
|
|
||||||
%patch4 -p1
|
%patch4 -p1
|
||||||
%patch6 -p1
|
|
||||||
%patch7 -p1
|
%patch7 -p1
|
||||||
%patch9 -p1
|
%patch9 -p1
|
||||||
pushd extensions
|
pushd extensions
|
||||||
|
@ -1,18 +1,21 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
RELEASE_TAG="THUNDERBIRD_3_0b3_RELEASE"
|
RELEASE_TAG="THUNDERBIRD_3_0b4_RELEASE"
|
||||||
VERSION="3.0b3"
|
VERSION="3.0b4"
|
||||||
|
|
||||||
# mozilla
|
echo "cloning comm-central..."
|
||||||
hg clone http://hg.mozilla.org/comm-central thunderbird
|
hg clone http://hg.mozilla.org/comm-central thunderbird
|
||||||
pushd thunderbird
|
pushd thunderbird
|
||||||
hg update -r $RELEASE_TAG
|
#hg update -r $RELEASE_TAG
|
||||||
python client.py checkout --skip-chatzilla --skip-venkman
|
echo "running client.py..."
|
||||||
|
python client.py checkout --skip-chatzilla --skip-venkman --comm-rev=$RELEASE_TAG --mozilla-rev=$RELEASE_TAG
|
||||||
popd
|
popd
|
||||||
|
echo "creating archivei..."
|
||||||
tar cjf thunderbird-$VERSION-source.tar.bz2 --exclude=.hgtags --exclude=.hgignore --exclude=.hg --exclude=CVS thunderbird
|
tar cjf thunderbird-$VERSION-source.tar.bz2 --exclude=.hgtags --exclude=.hgignore --exclude=.hg --exclude=CVS thunderbird
|
||||||
|
|
||||||
# l10n
|
# l10n
|
||||||
# http://l10n.mozilla.org/dashboard/?tree=tb30x -> shipped-locales
|
# http://l10n.mozilla.org/dashboard/?tree=tb30x -> shipped-locales
|
||||||
|
echo "fetching locales..."
|
||||||
if [ -e shipped-locales ]; then
|
if [ -e shipped-locales ]; then
|
||||||
SHIPPED_LOCALES=shipped-locales
|
SHIPPED_LOCALES=shipped-locales
|
||||||
else
|
else
|
||||||
@ -24,11 +27,13 @@ for locale in $(awk '{ print $1; }' $SHIPPED_LOCALES); do
|
|||||||
ja-JP-mac|en-US)
|
ja-JP-mac|en-US)
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
|
echo "fetching $locale ..."
|
||||||
hg clone http://hg.mozilla.org/releases/l10n-mozilla-1.9.1/$locale l10n/$locale
|
hg clone http://hg.mozilla.org/releases/l10n-mozilla-1.9.1/$locale l10n/$locale
|
||||||
hg -R l10n/$locale up -C -r $RELEASE_TAG
|
hg -R l10n/$locale up -C -r $RELEASE_TAG
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
|
echo "creating l10n archive..."
|
||||||
tar cjf l10n-$VERSION.tar.bz2 \
|
tar cjf l10n-$VERSION.tar.bz2 \
|
||||||
--exclude=.hgtags --exclude=.hgignore --exclude=.hg --exclude=browser --exclude=calendar \
|
--exclude=.hgtags --exclude=.hgignore --exclude=.hg --exclude=browser --exclude=calendar \
|
||||||
--exclude=suite \
|
--exclude=suite \
|
||||||
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:1dcd305aea953c69c5f1765653796507e02195e90099f03acd6ec0b97f34dcdd
|
|
||||||
size 15431608
|
|
3
l10n-3.0b4.tar.bz2
Normal file
3
l10n-3.0b4.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:ae866c27789391b89a4e483ead93d3f9899497680c424c5251ee7c43352cbf32
|
||||||
|
size 15400735
|
@ -1,70 +0,0 @@
|
|||||||
From: mozilla-central
|
|
||||||
Subject: make it possible to define MOZILLA_APP_LAUNCHER to control which
|
|
||||||
app should be used for session management
|
|
||||||
References:
|
|
||||||
https://bugzilla.mozilla.org/show_bug.cgi?id=453689
|
|
||||||
|
|
||||||
|
|
||||||
--- mozilla-1.9.1/toolkit/xre/nsNativeAppSupportUnix.cpp 2009-04-27 09:23:29.000000000 +0200
|
|
||||||
+++ mozilla-central/toolkit/xre/nsNativeAppSupportUnix.cpp 2009-07-07 12:55:10.000000000 +0200
|
|
||||||
@@ -155,31 +155,37 @@ gboolean save_yourself_cb(GnomeClient *c
|
|
||||||
interact_cb, nsnull);
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
-
|
|
||||||
- // Tell GNOME the command for restarting us so that we can be part of XSMP session restore
|
|
||||||
- NS_ASSERTION(gDirServiceProvider, "gDirServiceProvider is NULL! This shouldn't happen!");
|
|
||||||
- nsCOMPtr<nsIFile> executablePath;
|
|
||||||
- nsresult rv;
|
|
||||||
-
|
|
||||||
- PRBool dummy;
|
|
||||||
- rv = gDirServiceProvider->GetFile(XRE_EXECUTABLE_FILE, &dummy, getter_AddRefs(executablePath));
|
|
||||||
-
|
|
||||||
- if (NS_SUCCEEDED(rv)) {
|
|
||||||
- nsCAutoString path;
|
|
||||||
- char* argv[1];
|
|
||||||
-
|
|
||||||
- // Strip off the -bin suffix to get the shell script we should run; this is what Breakpad does
|
|
||||||
- nsCAutoString leafName;
|
|
||||||
- rv = executablePath->GetNativeLeafName(leafName);
|
|
||||||
- if (NS_SUCCEEDED(rv) && StringEndsWith(leafName, NS_LITERAL_CSTRING("-bin"))) {
|
|
||||||
- leafName.SetLength(leafName.Length() - strlen("-bin"));
|
|
||||||
- executablePath->SetNativeLeafName(leafName);
|
|
||||||
+
|
|
||||||
+ // Is there a request to suppress default binary launcher?
|
|
||||||
+ char* argv1 = getenv("MOZ_APP_LAUNCHER");
|
|
||||||
+
|
|
||||||
+ if(!argv1) {
|
|
||||||
+ // Tell GNOME the command for restarting us so that we can be part of XSMP session restore
|
|
||||||
+ NS_ASSERTION(gDirServiceProvider, "gDirServiceProvider is NULL! This shouldn't happen!");
|
|
||||||
+ nsCOMPtr<nsIFile> executablePath;
|
|
||||||
+ nsresult rv;
|
|
||||||
+
|
|
||||||
+ PRBool dummy;
|
|
||||||
+ rv = gDirServiceProvider->GetFile(XRE_EXECUTABLE_FILE, &dummy, getter_AddRefs(executablePath));
|
|
||||||
+
|
|
||||||
+ if (NS_SUCCEEDED(rv)) {
|
|
||||||
+ nsCAutoString path;
|
|
||||||
+
|
|
||||||
+ // Strip off the -bin suffix to get the shell script we should run; this is what Breakpad does
|
|
||||||
+ nsCAutoString leafName;
|
|
||||||
+ rv = executablePath->GetNativeLeafName(leafName);
|
|
||||||
+ if (NS_SUCCEEDED(rv) && StringEndsWith(leafName, NS_LITERAL_CSTRING("-bin"))) {
|
|
||||||
+ leafName.SetLength(leafName.Length() - strlen("-bin"));
|
|
||||||
+ executablePath->SetNativeLeafName(leafName);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ executablePath->GetNativePath(path);
|
|
||||||
+ argv1 = (char*)(path.get());
|
|
||||||
}
|
|
||||||
+ }
|
|
||||||
|
|
||||||
- executablePath->GetNativePath(path);
|
|
||||||
- argv[0] = (char*)(path.get());
|
|
||||||
-
|
|
||||||
- gnome_client_set_restart_command(client, 1, argv);
|
|
||||||
+ if(argv1) {
|
|
||||||
+ gnome_client_set_restart_command(client, 1, &argv1);
|
|
||||||
}
|
|
||||||
|
|
||||||
return TRUE;
|
|
118
mozilla-helper-app.patch
Normal file
118
mozilla-helper-app.patch
Normal file
@ -0,0 +1,118 @@
|
|||||||
|
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
|
||||||
|
|
||||||
|
|
||||||
|
diff --git a/uriloader/exthandler/unix/nsMIMEInfoUnix.cpp b/uriloader/exthandler/unix/nsMIMEInfoUnix.cpp
|
||||||
|
--- a/uriloader/exthandler/unix/nsMIMEInfoUnix.cpp
|
||||||
|
+++ b/uriloader/exthandler/unix/nsMIMEInfoUnix.cpp
|
||||||
|
@@ -41,16 +41,17 @@
|
||||||
|
#include <glib.h>
|
||||||
|
#include <hildon-uri.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#include "nsMIMEInfoUnix.h"
|
||||||
|
#include "nsGNOMERegistry.h"
|
||||||
|
#include "nsIGnomeVFSService.h"
|
||||||
|
+#include "nsAutoPtr.h"
|
||||||
|
#ifdef MOZ_ENABLE_DBUS
|
||||||
|
#include "nsDBusHandlerApp.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
nsresult
|
||||||
|
nsMIMEInfoUnix::LoadUriInternal(nsIURI * aURI)
|
||||||
|
{
|
||||||
|
@@ -69,23 +70,26 @@ nsMIMEInfoUnix::LoadUriInternal(nsIURI *
|
||||||
|
#endif
|
||||||
|
return rv;
|
||||||
|
}
|
||||||
|
|
||||||
|
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;
|
||||||
|
|
||||||
|
#ifdef MOZ_PLATFORM_HILDON
|
||||||
|
HildonURIAction *action = hildon_uri_get_default_action(mType.get(), nsnull);
|
||||||
|
if (action) {
|
||||||
|
*_retval = PR_TRUE;
|
||||||
|
hildon_uri_action_unref(action);
|
||||||
|
@@ -104,16 +108,26 @@ nsMIMEInfoUnix::LaunchDefaultWithFile(ns
|
||||||
|
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);
|
||||||
|
}
|
||||||
|
|
||||||
|
diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.cpp b/uriloader/exthandler/unix/nsOSHelperAppService.cpp
|
||||||
|
--- a/uriloader/exthandler/unix/nsOSHelperAppService.cpp
|
||||||
|
+++ b/uriloader/exthandler/unix/nsOSHelperAppService.cpp
|
||||||
|
@@ -1641,18 +1641,26 @@ nsOSHelperAppService::GetMIMEInfoFromOS(
|
||||||
|
NS_ADDREF(retval);
|
||||||
|
if (!aFileExt.IsEmpty())
|
||||||
|
retval->AppendExtension(aFileExt);
|
||||||
|
}
|
||||||
|
|
||||||
|
return retval;
|
||||||
|
}
|
||||||
|
|
||||||
|
- // Copy the attributes of retval onto miByExt, to return it
|
||||||
|
+ // Copy the attributes of retval onto miByExt, to return it but keep
|
||||||
|
+ // just collected mDefaultAppDescription
|
||||||
|
+ nsAutoString byExtDefault;
|
||||||
|
+ miByExt->GetDefaultDescription(byExtDefault);
|
||||||
|
+ retval->SetDefaultDescription(byExtDefault);
|
||||||
|
retval->CopyBasicDataTo(miByExt);
|
||||||
|
+ // But set the extensions primary since CopyBasicDataTo overwrites the
|
||||||
|
+ // list
|
||||||
|
+ if (!aFileExt.IsEmpty())
|
||||||
|
+ miByExt->SetPrimaryExtension(aFileExt);
|
||||||
|
|
||||||
|
miByExt.swap(retval);
|
||||||
|
}
|
||||||
|
return retval;
|
||||||
|
}
|
||||||
|
|
||||||
|
NS_IMETHODIMP
|
||||||
|
nsOSHelperAppService::GetProtocolHandlerInfoFromOS(const nsACString &aScheme,
|
@ -1,47 +0,0 @@
|
|||||||
From: Karl Tomlinson <mozbugz@karlt.net>
|
|
||||||
Subject: jemalloc integration cause crashes when libraries or plugins dlopen with RTLD_DEEPBIND
|
|
||||||
References:
|
|
||||||
https://bugzilla.mozilla.org/show_bug.cgi?id=493541
|
|
||||||
https://bugzilla.novell.com/show_bug.cgi?id=503151
|
|
||||||
|
|
||||||
diff --git a/memory/jemalloc/jemalloc.c b/memory/jemalloc/jemalloc.c
|
|
||||||
--- a/memory/jemalloc/jemalloc.c
|
|
||||||
+++ b/memory/jemalloc/jemalloc.c
|
|
||||||
@@ -7225,8 +7225,37 @@ jemalloc_darwin_init(void)
|
|
||||||
* default zone.
|
|
||||||
*/
|
|
||||||
assert(malloc_num_zones > 1);
|
|
||||||
memmove(&malloc_zones[1], &malloc_zones[0],
|
|
||||||
sizeof(malloc_zone_t *) * (malloc_num_zones - 1));
|
|
||||||
malloc_zones[0] = &zone;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
+
|
|
||||||
+#ifdef HAVE_LIBDL
|
|
||||||
+# include <dlfcn.h>
|
|
||||||
+/*
|
|
||||||
+ * glibc provides the RTLD_DEEPBIND flag for dlopen which can make it possible
|
|
||||||
+ * to inconsistently reference libc's malloc(3)-compatible functions
|
|
||||||
+ * (bug 493541).
|
|
||||||
+ *
|
|
||||||
+ * XXX On systems that support RTLD_GROUP or DF_1_GROUP, do their
|
|
||||||
+ * implementations permit similar inconsistencies? Should STV_SINGLETON
|
|
||||||
+ * visibility be used for interposition where available?
|
|
||||||
+ */
|
|
||||||
+# ifdef RTLD_DEEPBIND
|
|
||||||
+# if defined(__GLIBC__) && !defined(__UCLIBC__)
|
|
||||||
+
|
|
||||||
+/*
|
|
||||||
+ * These interpose hooks in glibc. They are actually passed an extra
|
|
||||||
+ * argument for the caller return address, which will be ignored.
|
|
||||||
+ */
|
|
||||||
+void (*__free_hook)(void *ptr) = free;
|
|
||||||
+void *(*__malloc_hook)(size_t size) = malloc;
|
|
||||||
+void *(*__realloc_hook)(void *ptr, size_t size) = realloc;
|
|
||||||
+void *(*__memalign_hook)(size_t alignment, size_t size) = memalign;
|
|
||||||
+
|
|
||||||
+# elif !defined(malloc)
|
|
||||||
+# error "Interposing malloc is unsafe on this system without libc malloc hooks."
|
|
||||||
+# endif
|
|
||||||
+# endif
|
|
||||||
+#endif
|
|
@ -1,124 +0,0 @@
|
|||||||
From: Wolfgang Rosenauer <wr@rosenauer.org>
|
|
||||||
Subject: Remove obsolete code which only confuses UI behaviour
|
|
||||||
References:
|
|
||||||
https://bugzilla.mozilla.org/show_bug.cgi?id=389732
|
|
||||||
https://bugzilla.mozilla.org/show_bug.cgi?id=480709
|
|
||||||
|
|
||||||
|
|
||||||
diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.cpp b/uriloader/exthandler/unix/nsOSHelperAppService.cpp
|
|
||||||
--- a/uriloader/exthandler/unix/nsOSHelperAppService.cpp
|
|
||||||
+++ b/uriloader/exthandler/unix/nsOSHelperAppService.cpp
|
|
||||||
@@ -1199,97 +1199,28 @@ nsOSHelperAppService::GetHandlerAndDescr
|
|
||||||
rv = mailcap->ReadLine(cBuffer, &more);
|
|
||||||
} while (NS_SUCCEEDED(rv));
|
|
||||||
mailcapFile->Close();
|
|
||||||
return rv;
|
|
||||||
}
|
|
||||||
|
|
||||||
-/* Looks up the handler for a specific scheme from prefs and returns the
|
|
||||||
- * file representing it in aApp. Note: This function doesn't guarantee the
|
|
||||||
- * existance of *aApp.
|
|
||||||
- */
|
|
||||||
-nsresult
|
|
||||||
-nsOSHelperAppService::GetHandlerAppFromPrefs(const char* aScheme, /*out*/ nsIFile** aApp)
|
|
||||||
-{
|
|
||||||
- nsresult rv;
|
|
||||||
- nsCOMPtr<nsIPrefService> srv(do_GetService(NS_PREFSERVICE_CONTRACTID, &rv));
|
|
||||||
- if (NS_FAILED(rv)) // we have no pref service... that's bad
|
|
||||||
- return rv;
|
|
||||||
-
|
|
||||||
- nsCOMPtr<nsIPrefBranch> branch;
|
|
||||||
- srv->GetBranch("network.protocol-handler.app.", getter_AddRefs(branch));
|
|
||||||
- if (!branch) // No protocol handlers set up -> can't load url
|
|
||||||
- return NS_ERROR_NOT_AVAILABLE;
|
|
||||||
-
|
|
||||||
- nsXPIDLCString appPath;
|
|
||||||
- rv = branch->GetCharPref(aScheme, getter_Copies(appPath));
|
|
||||||
- if (NS_FAILED(rv))
|
|
||||||
- return rv;
|
|
||||||
-
|
|
||||||
- LOG((" found app %s\n", appPath.get()));
|
|
||||||
-
|
|
||||||
- // First, try to treat |appPath| as absolute path, if it starts with '/'
|
|
||||||
- NS_ConvertUTF8toUTF16 utf16AppPath(appPath);
|
|
||||||
- if (appPath.First() == '/') {
|
|
||||||
- nsILocalFile* file;
|
|
||||||
- rv = NS_NewLocalFile(utf16AppPath, PR_TRUE, &file);
|
|
||||||
- *aApp = file;
|
|
||||||
- // If this worked, we are finished
|
|
||||||
- if (NS_SUCCEEDED(rv))
|
|
||||||
- return NS_OK;
|
|
||||||
- }
|
|
||||||
-
|
|
||||||
- // Second, check for a file in the mozilla app directory
|
|
||||||
- rv = NS_GetSpecialDirectory(NS_OS_CURRENT_PROCESS_DIR, aApp);
|
|
||||||
- if (NS_SUCCEEDED(rv)) {
|
|
||||||
- rv = (*aApp)->Append(utf16AppPath);
|
|
||||||
- if (NS_SUCCEEDED(rv)) {
|
|
||||||
- PRBool exists = PR_FALSE;
|
|
||||||
- rv = (*aApp)->Exists(&exists);
|
|
||||||
- if (NS_SUCCEEDED(rv) && exists)
|
|
||||||
- return NS_OK;
|
|
||||||
- }
|
|
||||||
- NS_RELEASE(*aApp);
|
|
||||||
- }
|
|
||||||
-
|
|
||||||
- // Thirdly, search the path
|
|
||||||
- return GetFileTokenForPath(utf16AppPath.get(), aApp);
|
|
||||||
-}
|
|
||||||
-
|
|
||||||
nsresult nsOSHelperAppService::OSProtocolHandlerExists(const char * aProtocolScheme, PRBool * aHandlerExists)
|
|
||||||
{
|
|
||||||
LOG(("-- nsOSHelperAppService::OSProtocolHandlerExists for '%s'\n",
|
|
||||||
aProtocolScheme));
|
|
||||||
*aHandlerExists = PR_FALSE;
|
|
||||||
|
|
||||||
- nsCOMPtr<nsIFile> app;
|
|
||||||
- nsresult rv = GetHandlerAppFromPrefs(aProtocolScheme, getter_AddRefs(app));
|
|
||||||
- if (NS_SUCCEEDED(rv)) {
|
|
||||||
- PRBool isExecutable = PR_FALSE, exists = PR_FALSE;
|
|
||||||
- nsresult rv1 = app->Exists(&exists);
|
|
||||||
- nsresult rv2 = app->IsExecutable(&isExecutable);
|
|
||||||
- *aHandlerExists = (NS_SUCCEEDED(rv1) && exists && NS_SUCCEEDED(rv2) && isExecutable);
|
|
||||||
- LOG((" handler exists: %s\n", *aHandlerExists ? "yes" : "no"));
|
|
||||||
- }
|
|
||||||
-
|
|
||||||
#ifdef MOZ_WIDGET_GTK2
|
|
||||||
// Check the GConf registry for a protocol handler
|
|
||||||
- if (!*aHandlerExists)
|
|
||||||
- *aHandlerExists = nsGNOMERegistry::HandlerExists(aProtocolScheme);
|
|
||||||
+ *aHandlerExists = nsGNOMERegistry::HandlerExists(aProtocolScheme);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
return NS_OK;
|
|
||||||
}
|
|
||||||
|
|
||||||
NS_IMETHODIMP nsOSHelperAppService::GetApplicationDescription(const nsACString& aScheme, nsAString& _retval)
|
|
||||||
{
|
|
||||||
- nsCOMPtr<nsIFile> appFile;
|
|
||||||
- nsresult rv = GetHandlerAppFromPrefs(PromiseFlatCString(aScheme).get(),
|
|
||||||
- getter_AddRefs(appFile));
|
|
||||||
- if (NS_SUCCEEDED(rv))
|
|
||||||
- return appFile->GetLeafName(_retval);
|
|
||||||
-
|
|
||||||
#ifdef MOZ_WIDGET_GTK2
|
|
||||||
nsGNOMERegistry::GetAppDescForScheme(aScheme, _retval);
|
|
||||||
return _retval.IsEmpty() ? NS_ERROR_NOT_AVAILABLE : NS_OK;
|
|
||||||
#else
|
|
||||||
return NS_ERROR_NOT_AVAILABLE;
|
|
||||||
#endif
|
|
||||||
diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.h b/uriloader/exthandler/unix/nsOSHelperAppService.h
|
|
||||||
--- a/uriloader/exthandler/unix/nsOSHelperAppService.h
|
|
||||||
+++ b/uriloader/exthandler/unix/nsOSHelperAppService.h
|
|
||||||
@@ -159,11 +159,9 @@ private:
|
|
||||||
const nsAString& aMajorType,
|
|
||||||
const nsAString& aMinorType,
|
|
||||||
nsHashtable& aTypeOptions,
|
|
||||||
nsAString& aHandler,
|
|
||||||
nsAString& aDescription,
|
|
||||||
nsAString& aMozillaFlags);
|
|
||||||
-
|
|
||||||
- nsresult GetHandlerAppFromPrefs(const char* aScheme, nsIFile** aApp);
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif // nsOSHelperAppService_h__
|
|
@ -1,45 +0,0 @@
|
|||||||
af
|
|
||||||
ar
|
|
||||||
be
|
|
||||||
bn-BD
|
|
||||||
ca
|
|
||||||
cs
|
|
||||||
de
|
|
||||||
el
|
|
||||||
en-GB
|
|
||||||
en-US
|
|
||||||
es-AR
|
|
||||||
es-ES
|
|
||||||
et
|
|
||||||
eu
|
|
||||||
fi
|
|
||||||
fr
|
|
||||||
fy-NL
|
|
||||||
ga-IE
|
|
||||||
gl
|
|
||||||
hu
|
|
||||||
id
|
|
||||||
is
|
|
||||||
it
|
|
||||||
ja linux win32
|
|
||||||
ja-JP-mac osx
|
|
||||||
ko
|
|
||||||
lt
|
|
||||||
nb-NO
|
|
||||||
nl
|
|
||||||
nn-NO
|
|
||||||
pa-IN
|
|
||||||
pl
|
|
||||||
pt-BR
|
|
||||||
pt-PT
|
|
||||||
ro
|
|
||||||
ru
|
|
||||||
si
|
|
||||||
sk
|
|
||||||
sq
|
|
||||||
sv-SE
|
|
||||||
ta-LK
|
|
||||||
tr
|
|
||||||
uk
|
|
||||||
vi
|
|
||||||
zh-CN
|
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:e482994f70fb39566057cb8de5d0a1cc351ad6284e11f3babd386114cda2cb98
|
|
||||||
size 58020044
|
|
3
thunderbird-3.0b4-source.tar.bz2
Normal file
3
thunderbird-3.0b4-source.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:33d28a2847e1b5673c50f8bf63ccf123c96b39dfcbd442dd9966edd952f99f6e
|
||||||
|
size 59231572
|
Loading…
Reference in New Issue
Block a user