Accepting request 18428 from mozilla:Factory
Copy from mozilla:Factory/MozillaThunderbird based on submit request 18428 from user wrosenauer OBS-URL: https://build.opensuse.org/request/show/18428 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/MozillaThunderbird?expand=0&rev=37
This commit is contained in:
parent
6e64e432d3
commit
ef30101499
@ -1,3 +1,11 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 21 13:58:54 CEST 2009 - wr@rosenauer.org
|
||||
|
||||
- remove obsolete code for protocol handlers (bmo#389732)
|
||||
(mozilla-protocol_handler.patch)
|
||||
- new enigmail snapshot (20090813)
|
||||
- require pinentry-gui for 11.2 and up (bnc#441084)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Aug 9 09:02:25 CEST 2009 - wr@rosenauer.org
|
||||
|
||||
|
@ -30,7 +30,7 @@ BuildRequires: nss-shared-helper-devel
|
||||
License: GPL v2 or later ; LGPL v2.1 or later ; MPL 1.1 or later
|
||||
%define mainversion 3.0b3
|
||||
Version: %{mainversion}
|
||||
Release: 3
|
||||
Release: 4
|
||||
Summary: The Stand-Alone Mozilla Mail Component
|
||||
Url: http://www.mozilla.org/products/thunderbird/
|
||||
Group: Productivity/Networking/Email/Clients
|
||||
@ -43,13 +43,14 @@ Source5: shipped-locales
|
||||
Source6: suse-default-prefs.js
|
||||
Source7: find-external-requires.sh
|
||||
Source8: MozillaThunderbird-rpmlintrc
|
||||
Source9: enigmail-20090716.tar.bz2
|
||||
Source9: enigmail-20090813.tar.bz2
|
||||
Source10: create-tar.sh
|
||||
Patch1: mozilla-app-launcher.patch
|
||||
Patch2: thunderbird-appname.patch
|
||||
Patch3: mozilla-jemalloc_deepbind.patch
|
||||
Patch4: mozilla-gtkfilepicker-buttonorder.patch
|
||||
Patch5: tb-develdirs.patch
|
||||
Patch6: mozilla-protocol_handler.patch
|
||||
Patch7: mozilla-path_len.patch
|
||||
Patch9: mozilla-shared-nss-db.patch
|
||||
Patch10: mozilla-system-hunspell.patch.bz2
|
||||
@ -139,13 +140,17 @@ This package contains the Lightning calendar extension for Mozilla Thunderbird.
|
||||
|
||||
%package -n enigmail
|
||||
Version: 0.95.99
|
||||
Release: 3
|
||||
Release: 4
|
||||
License: GPL v2 or later ; MPL
|
||||
Summary: OpenPGP addon for Thunderbird and SeaMonkey
|
||||
Group: Productivity/Networking/Email/Clients
|
||||
Url: http://enigmail.mozdev.org
|
||||
Requires: /usr/bin/gpg
|
||||
%if %suse_version > 1110
|
||||
Requires: pinentry-gui
|
||||
%else
|
||||
Requires: pinentry-dialog
|
||||
%endif
|
||||
|
||||
%description -n enigmail
|
||||
This package contains the Enigmail OpenPGP Addon for Thunderbird and SeaMonkey.
|
||||
@ -164,6 +169,7 @@ pushd mozilla
|
||||
%patch1 -p1
|
||||
%patch3 -p1
|
||||
%patch4 -p1
|
||||
%patch6 -p1
|
||||
%patch7 -p1
|
||||
%patch9 -p1
|
||||
pushd extensions
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:ce63e22bf581d5152f9aaa3f0049a68d5c3027e8f21f8850c3b515da7895d0b5
|
||||
size 759314
|
3
enigmail-20090813.tar.bz2
Normal file
3
enigmail-20090813.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:8620d4d69826726b0c98d82e58ef76a9f5f3b72eb408e740a6d89447430ff885
|
||||
size 789423
|
124
mozilla-protocol_handler.patch
Normal file
124
mozilla-protocol_handler.patch
Normal file
@ -0,0 +1,124 @@
|
||||
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__
|
Loading…
Reference in New Issue
Block a user