diff options
author | 2011-01-02 21:13:49 +0000 | |
---|---|---|
committer | 2011-01-02 21:13:49 +0000 | |
commit | a7391f1f76cbb7a6dd0e81f46e8afa0c72ec5bdc (patch) | |
tree | fc883058bca154b2ae3d016b84728e75634b06dd /mail-client | |
parent | Stable on amd64 wrt bug #349516 (diff) | |
download | historical-a7391f1f76cbb7a6dd0e81f46e8afa0c72ec5bdc.tar.gz historical-a7391f1f76cbb7a6dd0e81f46e8afa0c72ec5bdc.tar.bz2 historical-a7391f1f76cbb7a6dd0e81f46e8afa0c72ec5bdc.zip |
Fix segfault when attempting to dlclose cups, bug 325469
Package-Manager: portage-2.1.9.27/cvs/Linux x86_64
Diffstat (limited to 'mail-client')
-rw-r--r-- | mail-client/thunderbird/ChangeLog | 9 | ||||
-rw-r--r-- | mail-client/thunderbird/Manifest | 5 | ||||
-rw-r--r-- | mail-client/thunderbird/files/cups-1.4.4-fixup.patch | 161 | ||||
-rw-r--r-- | mail-client/thunderbird/thunderbird-3.1.7-r2.ebuild (renamed from mail-client/thunderbird/thunderbird-3.1.7-r1.ebuild) | 6 |
4 files changed, 175 insertions, 6 deletions
diff --git a/mail-client/thunderbird/ChangeLog b/mail-client/thunderbird/ChangeLog index 9ac69c24c488..30f1326a8003 100644 --- a/mail-client/thunderbird/ChangeLog +++ b/mail-client/thunderbird/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for mail-client/thunderbird # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/mail-client/thunderbird/ChangeLog,v 1.59 2011/01/01 19:51:39 armin76 Exp $ +# $Header: /var/cvsroot/gentoo-x86/mail-client/thunderbird/ChangeLog,v 1.60 2011/01/02 21:13:49 anarchy Exp $ + +*thunderbird-3.1.7-r2 (02 Jan 2011) + + 02 Jan 2011; Jory A. Pratt <anarchy@gentoo.org> + +files/cups-1.4.4-fixup.patch, -thunderbird-3.1.7-r1.ebuild, + +thunderbird-3.1.7-r2.ebuild: + Fix segfault when attempting to dlclose cups, bug 325469 01 Jan 2011; Raúl Porcel <armin76@gentoo.org> thunderbird-3.1.7.ebuild: alpha/ia64/sparc stable wrt #348316 diff --git a/mail-client/thunderbird/Manifest b/mail-client/thunderbird/Manifest index 486f7263d3b6..c502f109729e 100644 --- a/mail-client/thunderbird/Manifest +++ b/mail-client/thunderbird/Manifest @@ -1,5 +1,6 @@ AUX 1002_fix-system-hunspell-dict-detections.patch 3466 RMD160 f8fa846e5d7c80a15d0abf0c6aedb7302ead1f83 SHA1 091febd913c09c86c9242b1be8960fb012ee7c8d SHA256 7ce51cae6bbd6655c8bc543365370627e37d2fc5aa7f7e1270671f7482df344a AUX bug-606109.patch 1259 RMD160 6d3f5d354524268e34293e9ce2d8b173c47163af SHA1 e1488807cc61ec04b2caa50019c000ba5d077450 SHA256 f2e645dfaa03cabcf46703be5bdeff8ee021694896465d3d263b038682dc0395 +AUX cups-1.4.4-fixup.patch 5439 RMD160 e907f65012a88b0810979c0beda4244e817835e6 SHA1 4099626a22b61802c958faad8171d506a95f9fca SHA256 501f95e278c2fdf3dec2b5586a2dc5ae35d78557a0db9939a1501c4782e54be5 AUX icon/thunderbird-icon-unbranded.png 13280 RMD160 1654b2cfa39631e2084da982001113972eb41c09 SHA1 2fdca79e57c79d2485eb56d31de7afb05337898e SHA256 28b605529bee4d8245afdbb2cab5a705d8fa8977a11635b54c7bc5a7d6a9619c AUX icon/thunderbird-icon.png 6499 RMD160 1aeece7719c1c1629b98fc11870641769681a048 SHA1 651d244e96fa0edf13f68f5ef9047432eb6ed3bf SHA256 ff9749e42b82b80425bb52883d63baa53298af7be98870ee6b73f0a6cf0ab22d AUX icon/thunderbird-unbranded.desktop 183 RMD160 2aeecc5f6127adee0c9ab1e1c83a29bafb82f41e SHA1 3c7533d73abf8208e2117de1601ac31935994021 SHA256 b42bda8d82722d069049889f14887aabc9f3e139a023186780ffff222ca5722d @@ -200,7 +201,7 @@ DIST thunderbird-3.1.7.source.tar.bz2 65948060 RMD160 c5e25004565decf1467a9b4521 EBUILD thunderbird-3.1.3.ebuild 7651 RMD160 6937123960be614a273103521b55c5a86c93c8b4 SHA1 975a1bb7aa7d502534141f2ce45afe931d859fc4 SHA256 680bf0f7f67f6ec09d1d08f98db3159346e2674b3fb46a7c868b0dbdd8257a21 EBUILD thunderbird-3.1.5.ebuild 7614 RMD160 083d852a83cb7587af001f64a78e81e5e3c8780c SHA1 b3de974b205460f9dcaff6f67f74212bba94cea9 SHA256 98e783fac42e5d576a47fbfda1045a1a8f61044e51f24c4f7821c67bf6ec0dbd EBUILD thunderbird-3.1.6.ebuild 7665 RMD160 1604a2dafe34043793add0e17bebe82237ec4b02 SHA1 f069a70443c95128f35e521930a2eaee0ad7f649 SHA256 4c5e3028af9385f87a2d8927dc778e6dd58c8a8e695756f8c686427a97ae9684 -EBUILD thunderbird-3.1.7-r1.ebuild 7735 RMD160 a88606e189c7ef869d27ae6c9a774aaf34bc6e30 SHA1 7c7b3582654334ac02b79fa833b9d220e3735837 SHA256 31f7a1c2888cbfc2c5bc0fe92dc411e8fccb5650d8fd90d9a5992d254d4e7aec +EBUILD thunderbird-3.1.7-r2.ebuild 7779 RMD160 a151e3decc858cd912cb10bf42c26530ccc9cf9d SHA1 b3df03f22e8f8142c65a8f3a2c2581544f08d73c SHA256 c1139b1d7777879dcef5a400b29ecbc787fbcab96aeaf60fb903003266bd0d5d EBUILD thunderbird-3.1.7.ebuild 7611 RMD160 93002c4fe86cc7fb0da2da7b35ea7ab2675704ad SHA1 51b124ce8d85009ee4609812814b49f3b9f1ffd8 SHA256 1dac783c338daed3f98b68a83c0b575fe35eab051d8ba31c091a800477d95124 -MISC ChangeLog 59034 RMD160 053b08e163e2acfdda7c1c396c6dc8de3057e88d SHA1 60bb93b3c1e2f7379bab36540f3097fdafa9bd7f SHA256 22f0814e26c8021125a689c8a4b2787687281679f85133052469044cc23c6fb5 +MISC ChangeLog 59276 RMD160 6b27f01e6993f1e76a91685265497ed11ad27b36 SHA1 c7426bd08b69120d83038e3b3208004e87214b30 SHA256 24f67dc015ae3176928dfc73f43d8633fac71f414bb2b502456da4346ea9274d MISC metadata.xml 471 RMD160 dd596368f27518e6d32d724e878d8dfb0303fb68 SHA1 147c70ac08b477679be27a428679c4c06ce0c1f0 SHA256 8f3f2c2b7c204fa12ce8ab51e655985374ea469d3870680b6925d541dbf56ef3 diff --git a/mail-client/thunderbird/files/cups-1.4.4-fixup.patch b/mail-client/thunderbird/files/cups-1.4.4-fixup.patch new file mode 100644 index 000000000000..a0923e8906e9 --- /dev/null +++ b/mail-client/thunderbird/files/cups-1.4.4-fixup.patch @@ -0,0 +1,161 @@ +# HG changeset patch +# User Matthew Gregan <kinetik@flim.org> +# Date 1293624205 -3600 +# Node ID ffa1ef8ab52b4081e27aa2b24d14a550386f90db +# Parent 9e561d402701f46eb56dbadb96b6963f4518cdd0 +Bug 573039 - Construct nsCUPSShim statically and avoid calling PR_UnloadLibrary on libcups after it has been initialized. r=karlt a=clegnitto + +diff --git a/mozilla/gfx/src/psshared/nsCUPSShim.cpp b/mozilla/gfx/src/psshared/nsCUPSShim.cpp +--- a/mozilla/gfx/src/psshared/nsCUPSShim.cpp ++++ b/mozilla/gfx/src/psshared/nsCUPSShim.cpp +@@ -83,14 +83,8 @@ nsCUPSShim::Init() + #endif + PR_UnloadLibrary(mCupsLib); + mCupsLib = nsnull; + return PR_FALSE; + } + } + return PR_TRUE; + } +- +-nsCUPSShim::~nsCUPSShim() +-{ +- if (mCupsLib) +- PR_UnloadLibrary(mCupsLib); +-} +diff --git a/mozilla/gfx/src/psshared/nsCUPSShim.h b/mozilla/gfx/src/psshared/nsCUPSShim.h +--- a/mozilla/gfx/src/psshared/nsCUPSShim.h ++++ b/mozilla/gfx/src/psshared/nsCUPSShim.h +@@ -81,17 +81,16 @@ typedef int (PR_CALLBACK *CupsAddOptionT + int num_options, + cups_option_t **options); + + struct PRLibrary; + + class NS_PSSHARED nsCUPSShim { + public: + nsCUPSShim() : mCupsLib(nsnull) { } +- ~nsCUPSShim(); + + /** + * Initialize this object. Attempt to load the CUPS shared + * library and find function pointers for the supported + * functions (see below). + * @return PR_FALSE if the shared library could not be loaded, or if + * any of the functions could not be found. + * PR_TRUE for successful initialization. +diff --git a/mozilla/gfx/src/psshared/nsPSPrinters.cpp b/mozilla/gfx/src/psshared/nsPSPrinters.cpp +--- a/mozilla/gfx/src/psshared/nsPSPrinters.cpp ++++ b/mozilla/gfx/src/psshared/nsPSPrinters.cpp +@@ -51,32 +51,34 @@ + #include "plstr.h" + + #define NS_CUPS_PRINTER "CUPS/" + #define NS_CUPS_PRINTER_LEN (sizeof(NS_CUPS_PRINTER) - 1) + + /* dummy printer name for the gfx/src/ps driver */ + #define NS_POSTSCRIPT_DRIVER_NAME "PostScript/" + ++nsCUPSShim gCupsShim; ++ + /* Initialize the printer manager object */ + nsresult + nsPSPrinterList::Init() + { + nsresult rv; + + mPrefSvc = do_GetService(NS_PREFSERVICE_CONTRACTID, &rv); + if (NS_SUCCEEDED(rv)) + rv = mPrefSvc->GetBranch("print.", getter_AddRefs(mPref)); + NS_ENSURE_SUCCESS(rv, NS_ERROR_NOT_INITIALIZED); + + // Should we try cups? + PRBool useCups = PR_TRUE; + rv = mPref->GetBoolPref("postscript.cups.enabled", &useCups); +- if (useCups) +- mCups.Init(); ++ if (useCups && !gCupsShim.IsInitialized()) ++ gCupsShim.Init(); + return NS_OK; + } + + + /* Check whether the PostScript module has been disabled at runtime */ + PRBool + nsPSPrinterList::Enabled() + { +@@ -94,35 +96,35 @@ nsPSPrinterList::Enabled() + /* Fetch a list of printers handled by the PostsScript module */ + void + nsPSPrinterList::GetPrinterList(nsTArray<nsCString>& aList) + { + aList.Clear(); + + // Query CUPS for a printer list. The default printer goes to the + // head of the output list; others are appended. +- if (mCups.IsInitialized()) { ++ if (gCupsShim.IsInitialized()) { + cups_dest_t *dests; + +- int num_dests = (mCups.mCupsGetDests)(&dests); ++ int num_dests = (gCupsShim.mCupsGetDests)(&dests); + if (num_dests) { + for (int i = 0; i < num_dests; i++) { + nsCAutoString fullName(NS_CUPS_PRINTER); + fullName.Append(dests[i].name); + if (dests[i].instance != NULL) { + fullName.Append("/"); + fullName.Append(dests[i].instance); + } + if (dests[i].is_default) + aList.InsertElementAt(0, fullName); + else + aList.AppendElement(fullName); + } + } +- (mCups.mCupsFreeDests)(num_dests, dests); ++ (gCupsShim.mCupsFreeDests)(num_dests, dests); + } + + // Build the "classic" list of printers -- those accessed by running + // an opaque command. This list always contains a printer named "default". + // In addition, we look for either an environment variable + // MOZILLA_POSTSCRIPT_PRINTER_LIST or a preference setting + // print.printer_list, which contains a space-separated list of printer + // names. +diff --git a/mozilla/gfx/src/psshared/nsPSPrinters.h b/mozilla/gfx/src/psshared/nsPSPrinters.h +--- a/mozilla/gfx/src/psshared/nsPSPrinters.h ++++ b/mozilla/gfx/src/psshared/nsPSPrinters.h +@@ -37,17 +37,16 @@ + * ***** END LICENSE BLOCK ***** */ + + #ifndef nsPSPrinters_h___ + #define nsPSPrinters_h___ + + #include "nsString.h" + #include "nsTArray.h" + #include "prtypes.h" +-#include "nsCUPSShim.h" + #include "psSharedCore.h" + + class nsIPrefService; + class nsIPrefBranch; + class nsCUPSShim; + + class NS_PSSHARED nsPSPrinterList { + public: +@@ -91,12 +90,11 @@ class NS_PSSHARED nsPSPrinterList { + * the <type> portion as described for GetPrinterList(). + * @return The PrinterType value for this name. + */ + static PrinterType GetPrinterType(const nsACString& aName); + + private: + nsCOMPtr<nsIPrefService> mPrefSvc; + nsCOMPtr<nsIPrefBranch> mPref; +- nsCUPSShim mCups; + }; + + #endif /* nsPSPrinters_h___ */ + + diff --git a/mail-client/thunderbird/thunderbird-3.1.7-r1.ebuild b/mail-client/thunderbird/thunderbird-3.1.7-r2.ebuild index ffbec3e89f3c..45ede0d7983a 100644 --- a/mail-client/thunderbird/thunderbird-3.1.7-r1.ebuild +++ b/mail-client/thunderbird/thunderbird-3.1.7-r2.ebuild @@ -1,6 +1,6 @@ -# Copyright 1999-2010 Gentoo Foundation +# Copyright 1999-2011 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/mail-client/thunderbird/thunderbird-3.1.7-r1.ebuild,v 1.2 2010/12/29 04:33:19 anarchy Exp $ +# $Header: /var/cvsroot/gentoo-x86/mail-client/thunderbird/thunderbird-3.1.7-r2.ebuild,v 1.1 2011/01/02 21:13:49 anarchy Exp $ EAPI="3" WANT_AUTOCONF="2.1" @@ -115,7 +115,7 @@ src_prepare() { epatch "${WORKDIR}" epatch "${FILESDIR}/bug-606109.patch" - + epatch "${FILESDIR}/cups-1.4.4-fixup.patch" # Respect users ldflags when building ldap support epatch "${FILESDIR}/${PN}-respect-ldflags.patch" |