Mozilla Thunderbird mail/newsgroup client
f8c155149ca1caeaf8b1adc053d85d1c756254d6..c45ba07eb6caccd7bde1da7ccecfdf337e1e2cd3
2019-02-04 CentOS Sources
debrand thunderbird-60.5.0-1.el7_6
c45ba0 diff | tree
2019-02-04 CentOS Sources
import thunderbird-60.5.0-1.el7_6
cf9011 diff | tree
1 files deleted
12 files modified
321 ■■■■■ changed files
.gitignore 6 ●●●● patch | view | raw | blame | history
.thunderbird.metadata 6 ●●●● patch | view | raw | blame | history
SOURCES/build-disable-elfhack.patch 8 ●●●● patch | view | raw | blame | history
SOURCES/build-jit-atomic-always-lucky.patch 34 ●●●● patch | view | raw | blame | history
SOURCES/build-nss-version.patch 2 ●●● patch | view | raw | blame | history
SOURCES/firefox-disable-dbus-remote.patch 36 ●●●●● patch | view | raw | blame | history
SOURCES/mozilla-1170092.patch 100 ●●●● patch | view | raw | blame | history
SOURCES/mozilla-1196777.patch 35 ●●●● patch | view | raw | blame | history
SOURCES/rhbz-1173156.patch 22 ●●●● patch | view | raw | blame | history
SOURCES/rhbz-1354671.patch 14 ●●●● patch | view | raw | blame | history
SOURCES/rhbz-1503632-nss.patch 23 ●●●●● patch | view | raw | blame | history
SOURCES/xulrunner-24.0-jemalloc-ppc.patch 12 ●●●● patch | view | raw | blame | history
SPECS/thunderbird.spec 23 ●●●●● patch | view | raw | blame | history
.gitignore
@@ -1,7 +1,7 @@
SOURCES/Python-2.7.13.tar.xz
SOURCES/gtk3-private-3.22.26-1.el6.src.rpm
SOURCES/libffi-3.0.13-18.el7_3.src.rpm
SOURCES/lightning-langpacks-60.4.0.tar.xz
SOURCES/thunderbird-60.4.0.source.tar.xz
SOURCES/thunderbird-langpacks-60.4.0-20190103.tar.xz
SOURCES/lightning-langpacks-60.5.0.tar.xz
SOURCES/thunderbird-60.5.0.source.tar.xz
SOURCES/thunderbird-langpacks-60.5.0-20190129.tar.xz
SOURCES/yasm-1.2.0-3.el5.src.rpm
.thunderbird.metadata
@@ -1,7 +1,7 @@
18a8f30a0356c751b8d0ea6f76e764cab13ee046 SOURCES/Python-2.7.13.tar.xz
0de63f863b158454b9429234b52ed28a397ec45c SOURCES/gtk3-private-3.22.26-1.el6.src.rpm
e188ab1a444697bc649e223c28389d82ca94c472 SOURCES/libffi-3.0.13-18.el7_3.src.rpm
147cffbafb9672855a3a60c276c3f7b80a7a9103 SOURCES/lightning-langpacks-60.4.0.tar.xz
bcdd2096a0e6cdfb28a8bef384688a03625ce4c5 SOURCES/thunderbird-60.4.0.source.tar.xz
446f167505f108dea8c647537154a9a804e39223 SOURCES/thunderbird-langpacks-60.4.0-20190103.tar.xz
530d620727da8a87afd4881d798d107c86924096 SOURCES/lightning-langpacks-60.5.0.tar.xz
37d847e8f59a1fe84433b74fe9f41a2876eef2be SOURCES/thunderbird-60.5.0.source.tar.xz
79d23a45e8fb56467421e05255bade9708b0c3bf SOURCES/thunderbird-langpacks-60.5.0-20190129.tar.xz
77fd30f7ebc12a629a31c1e252cec06af55a71fe SOURCES/yasm-1.2.0-3.el5.src.rpm
SOURCES/build-disable-elfhack.patch
@@ -1,7 +1,7 @@
diff -up firefox-62.0.2/toolkit/moz.configure.elfhack firefox-62.0.2/toolkit/moz.configure
--- firefox-62.0.2/toolkit/moz.configure.elfhack    2018-09-27 14:32:56.549507561 +0200
+++ firefox-62.0.2/toolkit/moz.configure    2018-09-27 14:33:08.219532121 +0200
@@ -1195,7 +1195,7 @@ with only_when(has_elfhack):
diff -up firefox-60.4.0/toolkit/moz.configure.disable-elfhack firefox-60.4.0/toolkit/moz.configure
--- firefox-60.4.0/toolkit/moz.configure.disable-elfhack    2019-01-03 14:47:00.566556623 +0100
+++ firefox-60.4.0/toolkit/moz.configure    2019-01-03 14:49:14.243887620 +0100
@@ -1192,7 +1192,7 @@ with only_when(has_elfhack):
     option('--disable-elf-hack', help='Disable elf hacks')
 
     set_config('USE_ELF_HACK',
SOURCES/build-jit-atomic-always-lucky.patch
@@ -1,30 +1,12 @@
diff -up firefox-57.0b5/js/src/jit/AtomicOperations.h.jit-atomic-lucky firefox-57.0b5/js/src/jit/AtomicOperations.h
--- firefox-57.0b5/js/src/jit/AtomicOperations.h.jit-atomic-lucky    2017-10-06 12:34:02.338973607 +0200
+++ firefox-57.0b5/js/src/jit/AtomicOperations.h    2017-10-06 12:38:24.632622215 +0200
@@ -415,7 +415,7 @@ AtomicOperations::isLockfreeJS(int32_t s
diff -up firefox-60.5.0/js/src/jit/AtomicOperations.h.jit-atomic-lucky firefox-60.5.0/js/src/jit/AtomicOperations.h
--- firefox-60.5.0/js/src/jit/AtomicOperations.h.jit-atomic-lucky    2019-01-22 10:20:27.993697161 +0100
+++ firefox-60.5.0/js/src/jit/AtomicOperations.h    2019-01-22 10:23:15.337873762 +0100
@@ -394,7 +394,7 @@ inline bool AtomicOperations::isLockfree
 #elif defined(__s390__) || defined(__s390x__)
 # include "jit/none/AtomicOperations-feeling-lucky.h"
 #include "jit/none/AtomicOperations-feeling-lucky.h"
 #else
-# error "No AtomicOperations support provided for this platform"
+# include "jit/none/AtomicOperations-feeling-lucky.h"
-#error "No AtomicOperations support provided for this platform"
+#include "jit/none/AtomicOperations-feeling-lucky.h"
 #endif
 
 #endif // jit_AtomicOperations_h
diff -up firefox-57.0b5/js/src/jit/none/AtomicOperations-feeling-lucky.h.jit-atomic-lucky firefox-57.0b5/js/src/jit/none/AtomicOperations-feeling-lucky.h
--- firefox-57.0b5/js/src/jit/none/AtomicOperations-feeling-lucky.h.jit-atomic-lucky    2017-09-19 06:18:28.000000000 +0200
+++ firefox-57.0b5/js/src/jit/none/AtomicOperations-feeling-lucky.h    2017-10-06 12:34:02.338973607 +0200
@@ -79,6 +79,14 @@
 #  define GNUC_COMPATIBLE
 #endif
+#ifdef __s390__
+#  define GNUC_COMPATIBLE
+#endif
+
+#ifdef __s390x__
+#  define GNUC_COMPATIBLE
+#endif
+
 // The default implementation tactic for gcc/clang is to use the newer
 // __atomic intrinsics added for use in C++11 <atomic>.  Where that
 // isn't available, we use GCC's older __sync functions instead.
 #endif  // jit_AtomicOperations_h
SOURCES/build-nss-version.patch
@@ -5,7 +5,7 @@
     _USE_SYSTEM_NSS=1 )
 
 if test -n "$_USE_SYSTEM_NSS"; then
-    AM_PATH_NSS(3.36.6, [MOZ_SYSTEM_NSS=1], [AC_MSG_ERROR([you don't have NSS installed or your version is too old])])
-    AM_PATH_NSS(3.36.7, [MOZ_SYSTEM_NSS=1], [AC_MSG_ERROR([you don't have NSS installed or your version is too old])])
+    AM_PATH_NSS(3.36.0, [MOZ_SYSTEM_NSS=1], [AC_MSG_ERROR([you don't have NSS installed or your version is too old])])
 fi
 
SOURCES/firefox-disable-dbus-remote.patch
File was deleted
SOURCES/mozilla-1170092.patch
@@ -1,33 +1,32 @@
diff -up firefox-58.0/extensions/pref/autoconfig/src/nsReadConfig.cpp.1170092 firefox-58.0/extensions/pref/autoconfig/src/nsReadConfig.cpp
--- firefox-58.0/extensions/pref/autoconfig/src/nsReadConfig.cpp.1170092    2018-01-11 21:17:03.000000000 +0100
+++ firefox-58.0/extensions/pref/autoconfig/src/nsReadConfig.cpp    2018-01-23 13:59:45.446495820 +0100
@@ -239,9 +239,20 @@ nsresult nsReadConfig::openAndEvaluateJS
             return rv;
diff -up firefox-60.5.0/extensions/pref/autoconfig/src/nsReadConfig.cpp.1170092 firefox-60.5.0/extensions/pref/autoconfig/src/nsReadConfig.cpp
--- firefox-60.5.0/extensions/pref/autoconfig/src/nsReadConfig.cpp.1170092    2019-01-22 10:48:38.187383614 +0100
+++ firefox-60.5.0/extensions/pref/autoconfig/src/nsReadConfig.cpp    2019-01-22 11:26:11.027108692 +0100
@@ -225,8 +225,20 @@ nsresult nsReadConfig::openAndEvaluateJS
     if (NS_FAILED(rv)) return rv;
 
         rv = NS_NewLocalFileInputStream(getter_AddRefs(inStr), jsFile);
-        if (NS_FAILED(rv))
-            return rv;
+        if (NS_FAILED(rv)) {
+          // Look for cfg file in /etc/<application>/pref
+          rv = NS_GetSpecialDirectory(NS_APP_PREFS_SYSTEM_CONFIG_DIR,
+                                      getter_AddRefs(jsFile));
+          NS_ENSURE_SUCCESS(rv, rv);
     rv = NS_NewLocalFileInputStream(getter_AddRefs(inStr), jsFile);
-    if (NS_FAILED(rv)) return rv;
+    if (NS_FAILED(rv)) {
+      // Look for cfg file in /etc/<application>/pref
+      rv = NS_GetSpecialDirectory(NS_APP_PREFS_SYSTEM_CONFIG_DIR,
+                                  getter_AddRefs(jsFile));
+      NS_ENSURE_SUCCESS(rv, rv);
+
+          rv = jsFile->AppendNative(NS_LITERAL_CSTRING("pref"));
+          NS_ENSURE_SUCCESS(rv, rv);
+          rv = jsFile->AppendNative(nsDependentCString(aFileName));
+          NS_ENSURE_SUCCESS(rv, rv);
+      rv = jsFile->AppendNative(NS_LITERAL_CSTRING("pref"));
+      NS_ENSURE_SUCCESS(rv, rv);
+      rv = jsFile->AppendNative(nsDependentCString(aFileName));
+      NS_ENSURE_SUCCESS(rv, rv);
 
+          rv = NS_NewLocalFileInputStream(getter_AddRefs(inStr), jsFile);
+          NS_ENSURE_SUCCESS(rv, rv);
+        }
     } else {
         nsAutoCString location("resource://gre/defaults/autoconfig/");
         location += aFileName;
diff -up firefox-58.0/modules/libpref/Preferences.cpp.1170092 firefox-58.0/modules/libpref/Preferences.cpp
--- firefox-58.0/modules/libpref/Preferences.cpp.1170092    2018-01-23 13:59:45.447495817 +0100
+++ firefox-58.0/modules/libpref/Preferences.cpp    2018-01-23 14:02:51.456987774 +0100
@@ -4402,6 +4402,8 @@ pref_InitInitialObjects()
+      rv = NS_NewLocalFileInputStream(getter_AddRefs(inStr), jsFile);
+      NS_ENSURE_SUCCESS(rv, rv);
+    }
   } else {
     nsAutoCString location("resource://gre/defaults/autoconfig/");
     location += aFileName;
diff -up firefox-60.5.0/modules/libpref/Preferences.cpp.1170092 firefox-60.5.0/modules/libpref/Preferences.cpp
--- firefox-60.5.0/modules/libpref/Preferences.cpp.1170092    2019-01-21 17:38:16.000000000 +0100
+++ firefox-60.5.0/modules/libpref/Preferences.cpp    2019-01-22 10:48:38.187383614 +0100
@@ -3459,6 +3459,8 @@ static nsresult pref_ReadPrefFromJar(nsZ
   //
   // Thus, in the omni.jar case, we always load app-specific default
   // preferences from omni.jar, whether or not `$app == $gre`.
@@ -36,10 +35,10 @@
 
   nsresult rv;
   nsZipFind* findPtr;
diff -up firefox-58.0/toolkit/xre/nsXREDirProvider.cpp.1170092 firefox-58.0/toolkit/xre/nsXREDirProvider.cpp
--- firefox-58.0/toolkit/xre/nsXREDirProvider.cpp.1170092    2018-01-11 21:17:06.000000000 +0100
+++ firefox-58.0/toolkit/xre/nsXREDirProvider.cpp    2018-01-23 13:59:45.447495817 +0100
@@ -59,6 +59,7 @@
diff -up firefox-60.5.0/toolkit/xre/nsXREDirProvider.cpp.1170092 firefox-60.5.0/toolkit/xre/nsXREDirProvider.cpp
--- firefox-60.5.0/toolkit/xre/nsXREDirProvider.cpp.1170092    2019-01-21 17:38:51.000000000 +0100
+++ firefox-60.5.0/toolkit/xre/nsXREDirProvider.cpp    2019-01-22 11:37:01.868896974 +0100
@@ -58,6 +58,7 @@
 #endif
 #ifdef XP_UNIX
 #include <ctype.h>
@@ -47,10 +46,11 @@
 #endif
 #ifdef XP_IOS
 #include "UIKitDirProvider.h"
@@ -554,6 +555,20 @@ nsXREDirProvider::GetFile(const char* aP
@@ -491,6 +492,21 @@ nsXREDirProvider::GetFile(const char* aP
       }
     }
   }
+
+#if defined(XP_UNIX)
+  if (!strcmp(aProperty, NS_APP_PREFS_SYSTEM_CONFIG_DIR)) {
+    nsCString sysConfigDir = NS_LITERAL_CSTRING("/etc/");
@@ -65,32 +65,34 @@
+  }
+#endif
+
   if (NS_FAILED(rv) || !file)
     return NS_ERROR_FAILURE;
   if (NS_FAILED(rv) || !file) return NS_ERROR_FAILURE;
 
@@ -887,6 +902,14 @@ nsXREDirProvider::GetFilesInternal(const
   if (ensureFilePermissions) {
@@ -796,6 +812,16 @@ nsresult nsXREDirProvider::GetFilesInter
     LoadDirIntoArray(mXULAppDir, kAppendPrefDir, directories);
     LoadDirsIntoArray(mAppBundleDirectories,
                       kAppendPrefDir, directories);
     LoadDirsIntoArray(mAppBundleDirectories, kAppendPrefDir, directories);
+    // Add /etc/<application>/pref/ directory if it exists
+    nsCOMPtr<nsIFile> systemPrefDir;
+    rv = NS_GetSpecialDirectory(NS_APP_PREFS_SYSTEM_CONFIG_DIR, getter_AddRefs(systemPrefDir));
+    rv = NS_GetSpecialDirectory(NS_APP_PREFS_SYSTEM_CONFIG_DIR,
+                                getter_AddRefs(systemPrefDir));
+    if (NS_SUCCEEDED(rv)) {
+      rv = systemPrefDir->AppendNative(NS_LITERAL_CSTRING("pref"));
+      if (NS_SUCCEEDED(rv))
+        directories.AppendObject(systemPrefDir);
+    }
+
     rv = NS_NewArrayEnumerator(aResult, directories);
   }
diff -up firefox-58.0/xpcom/io/nsAppDirectoryServiceDefs.h.1170092 firefox-58.0/xpcom/io/nsAppDirectoryServiceDefs.h
--- firefox-58.0/xpcom/io/nsAppDirectoryServiceDefs.h.1170092    2018-01-23 13:59:45.447495817 +0100
+++ firefox-58.0/xpcom/io/nsAppDirectoryServiceDefs.h    2018-01-23 14:02:02.871120476 +0100
@@ -59,6 +59,7 @@
 #define NS_APP_PREFS_50_FILE                    "PrefF"
 #define NS_APP_PREFS_DEFAULTS_DIR_LIST          "PrefDL"
 #define NS_APP_PREFS_OVERRIDE_DIR               "PrefDOverride" // Directory for per-profile defaults
   } else if (!strcmp(aProperty, NS_APP_CHROME_DIR_LIST)) {
     // NS_APP_CHROME_DIR_LIST is only used to get default (native) icons
diff -up firefox-60.5.0/xpcom/io/nsAppDirectoryServiceDefs.h.1170092 firefox-60.5.0/xpcom/io/nsAppDirectoryServiceDefs.h
--- firefox-60.5.0/xpcom/io/nsAppDirectoryServiceDefs.h.1170092    2019-01-22 10:48:38.188383609 +0100
+++ firefox-60.5.0/xpcom/io/nsAppDirectoryServiceDefs.h    2019-01-22 11:08:12.068459480 +0100
@@ -62,6 +62,7 @@
 #define NS_APP_PREFS_DEFAULTS_DIR_LIST "PrefDL"
 #define NS_APP_PREFS_OVERRIDE_DIR \
   "PrefDOverride"  // Directory for per-profile defaults
+#define NS_APP_PREFS_SYSTEM_CONFIG_DIR          "PrefSysConf"   // Directory with system-wide configuration
 
 #define NS_APP_USER_PROFILE_50_DIR              "ProfD"
 #define NS_APP_USER_PROFILE_LOCAL_50_DIR        "ProfLD"
 #define NS_APP_USER_PROFILE_50_DIR "ProfD"
 #define NS_APP_USER_PROFILE_LOCAL_50_DIR "ProfLD"
SOURCES/mozilla-1196777.patch
@@ -1,28 +1,13 @@
# HG changeset patch
# User Martin Stransky <stransky@redhat.com>
# Parent  4e3ad95d689a5beabf3c1f41d958794fe00e3767
Bug 1196777 - Ask GDK to receive focus events, r=?karlt
diff --git a/widget/gtk/nsWindow.cpp b/widget/gtk/nsWindow.cpp
--- a/widget/gtk/nsWindow.cpp
+++ b/widget/gtk/nsWindow.cpp
@@ -142,17 +142,18 @@ const gint kEvents = GDK_EXPOSURE_MASK |
                      GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK |
                      GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK |
 #if GTK_CHECK_VERSION(3,4,0)
                      GDK_SMOOTH_SCROLL_MASK |
                      GDK_TOUCH_MASK |
diff -up firefox-60.5.0/widget/gtk/nsWindow.cpp.1196777 firefox-60.5.0/widget/gtk/nsWindow.cpp
--- firefox-60.5.0/widget/gtk/nsWindow.cpp.1196777    2019-01-22 11:41:58.630469400 +0100
+++ firefox-60.5.0/widget/gtk/nsWindow.cpp    2019-01-22 11:42:50.134227448 +0100
@@ -152,7 +152,8 @@ const gint kEvents =
 #if GTK_CHECK_VERSION(3, 4, 0)
     GDK_SMOOTH_SCROLL_MASK | GDK_TOUCH_MASK |
 #endif
                      GDK_SCROLL_MASK |
                      GDK_POINTER_MOTION_MASK |
-                     GDK_PROPERTY_CHANGE_MASK;
+                     GDK_PROPERTY_CHANGE_MASK |
+                     GDK_FOCUS_CHANGE_MASK;
-    GDK_SCROLL_MASK | GDK_POINTER_MOTION_MASK | GDK_PROPERTY_CHANGE_MASK;
+    GDK_SCROLL_MASK | GDK_POINTER_MOTION_MASK | GDK_PROPERTY_CHANGE_MASK |
+    GDK_FOCUS_CHANGE_MASK;
 
 /* utility functions */
 static bool       is_mouse_in_window(GdkWindow* aWindow,
                                      gdouble aMouseX, gdouble aMouseY);
 static nsWindow  *get_window_for_gtk_widget(GtkWidget *widget);
 static nsWindow  *get_window_for_gdk_window(GdkWindow *window);
 static GtkWidget *get_gtk_widget_for_gdk_window(GdkWindow *window);
 static GdkCursor *get_gtk_cursor(nsCursor aCursor);
 static bool is_mouse_in_window(GdkWindow *aWindow, gdouble aMouseX,
SOURCES/rhbz-1173156.patch
@@ -1,12 +1,12 @@
diff -up firefox-31.3.0/mozilla-esr31/extensions/auth/nsAuthSambaNTLM.cpp.old firefox-31.3.0/mozilla-esr31/extensions/auth/nsAuthSambaNTLM.cpp
--- firefox-31.3.0/mozilla-esr31/extensions/auth/nsAuthSambaNTLM.cpp.old    2014-11-25 12:23:22.000000000 +0100
+++ firefox-31.3.0/mozilla-esr31/extensions/auth/nsAuthSambaNTLM.cpp    2014-12-23 15:26:36.606674625 +0100
@@ -174,7 +174,7 @@ nsAuthSambaNTLM::SpawnNTLMAuthHelper()
         return NS_ERROR_FAILURE;
diff -up firefox-60.5.0/extensions/auth/nsAuthSambaNTLM.cpp.rhbz-1173156 firefox-60.5.0/extensions/auth/nsAuthSambaNTLM.cpp
--- firefox-60.5.0/extensions/auth/nsAuthSambaNTLM.cpp.rhbz-1173156    2019-01-22 10:36:09.284069020 +0100
+++ firefox-60.5.0/extensions/auth/nsAuthSambaNTLM.cpp    2019-01-22 10:37:12.669757744 +0100
@@ -161,7 +161,7 @@ nsresult nsAuthSambaNTLM::SpawnNTLMAuthH
   const char* username = PR_GetEnv("USER");
   if (!username) return NS_ERROR_FAILURE;
 
     const char* const args[] = {
-        "ntlm_auth",
+        "/usr/bin/ntlm_auth",
         "--helper-protocol", "ntlmssp-client-1",
         "--use-cached-creds",
         "--username", username,
-  const char* const args[] = {"ntlm_auth",
+  const char* const args[] = {"/usr/bin/ntlm_auth",
                               "--helper-protocol",
                               "ntlmssp-client-1",
                               "--use-cached-creds",
SOURCES/rhbz-1354671.patch
@@ -1,12 +1,12 @@
diff -up firefox-53.0/layout/base/nsIPresShell.h.1354671 firefox-53.0/layout/base/nsIPresShell.h
--- firefox-53.0/layout/base/nsIPresShell.h.1354671    2017-04-27 13:07:43.808653320 +0200
+++ firefox-53.0/layout/base/nsIPresShell.h    2017-04-27 13:09:40.404427641 +0200
@@ -212,7 +212,7 @@ public:
diff -up firefox-60.5.0/layout/base/nsIPresShell.h.1354671 firefox-60.5.0/layout/base/nsIPresShell.h
--- firefox-60.5.0/layout/base/nsIPresShell.h.1354671    2019-01-22 16:08:40.796539950 +0100
+++ firefox-60.5.0/layout/base/nsIPresShell.h    2019-01-22 16:10:25.106069228 +0100
@@ -204,7 +204,7 @@ class nsIPresShell : public nsStubDocume
    * to the same aSize value.  AllocateFrame is infallible and will abort
    * on out-of-memory.
    */
-  void* AllocateFrame(nsQueryFrame::FrameIID aID, size_t aSize)
+  void* __attribute__((optimize("no-lifetime-dse"))) AllocateFrame(nsQueryFrame::FrameIID aID, size_t aSize)
   {
-  void* AllocateFrame(nsQueryFrame::FrameIID aID, size_t aSize) {
+  void* __attribute__((optimize("no-lifetime-dse"))) AllocateFrame(nsQueryFrame::FrameIID aID, size_t aSize) {
     void* result = mFrameArena.AllocateByFrameID(aID, aSize);
     RecordAlloc(result);
     return result;
SOURCES/rhbz-1503632-nss.patch
@@ -1,12 +1,7 @@
diff --git a/security/certverifier/NSSCertDBTrustDomain.cpp b/security/certverifier/NSSCertDBTrustDomain.cpp
--- a/security/certverifier/NSSCertDBTrustDomain.cpp
+++ b/security/certverifier/NSSCertDBTrustDomain.cpp
@@ -1057,22 +1057,20 @@ InitializeNSS(const nsACString& dir, boo
   // "/usr/lib/nss/libnssckbi.so".
   uint32_t flags = NSS_INIT_NOROOTINIT | NSS_INIT_OPTIMIZESPACE;
   if (readOnly) {
     flags |= NSS_INIT_READONLY;
   }
diff -up firefox-60.5.0/security/certverifier/NSSCertDBTrustDomain.cpp.1503632-nss firefox-60.5.0/security/certverifier/NSSCertDBTrustDomain.cpp
--- firefox-60.5.0/security/certverifier/NSSCertDBTrustDomain.cpp.1503632-nss    2019-01-22 11:38:49.484365928 +0100
+++ firefox-60.5.0/security/certverifier/NSSCertDBTrustDomain.cpp    2019-01-22 11:40:52.694779150 +0100
@@ -1077,13 +1077,11 @@ SECStatus InitializeNSS(const nsACString
   if (!loadPKCS11Modules) {
     flags |= NSS_INIT_NOMODDB;
   }
@@ -16,13 +11,9 @@
-          ("InitializeNSS(%s, %d, %d)", dbTypeAndDirectory.get(), readOnly,
+          ("InitializeNSS(%s, %d, %d)", PromiseFlatCString(dir).get(), readOnly,
            loadPKCS11Modules));
-  SECStatus srv = NSS_Initialize(dbTypeAndDirectory.get(), "", "",
+  SECStatus srv = NSS_Initialize(PromiseFlatCString(dir).get(), "", "",
                                  SECMOD_DB, flags);
   SECStatus srv =
-      NSS_Initialize(dbTypeAndDirectory.get(), "", "", SECMOD_DB, flags);
+      NSS_Initialize(PromiseFlatCString(dir).get(), "", "", SECMOD_DB, flags);
   if (srv != SECSuccess) {
     return srv;
   }
   if (!readOnly) {
     UniquePK11SlotInfo slot(PK11_GetInternalKeySlot());
     if (!slot) {
SOURCES/xulrunner-24.0-jemalloc-ppc.patch
@@ -1,12 +1,12 @@
diff -up firefox-60.0/memory/build/mozjemalloc.cpp.ppc-jemalloc firefox-60.0/memory/build/mozjemalloc.cpp
--- firefox-60.0/memory/build/mozjemalloc.cpp.ppc-jemalloc    2018-06-06 14:39:28.454371053 +0200
+++ firefox-60.0/memory/build/mozjemalloc.cpp    2018-06-06 14:39:40.242397928 +0200
diff -up firefox-60.5.0/memory/build/mozjemalloc.cpp.jemalloc-ppc firefox-60.5.0/memory/build/mozjemalloc.cpp
--- firefox-60.5.0/memory/build/mozjemalloc.cpp.jemalloc-ppc    2019-01-22 10:25:30.764207480 +0100
+++ firefox-60.5.0/memory/build/mozjemalloc.cpp    2019-01-22 10:28:48.352235343 +0100
@@ -180,7 +180,7 @@ using namespace mozilla;
 // Debug builds are opted out too, for test coverage.
 #ifndef MOZ_DEBUG
 #if !defined(__ia64__) && !defined(__sparc__) && !defined(__mips__) &&         \
-  !defined(__aarch64__)
+  !defined(__aarch64__) && !defined(__powerpc__)
 #if !defined(__ia64__) && !defined(__sparc__) && !defined(__mips__) && \
-    !defined(__aarch64__)
+    !defined(__aarch64__) && !defined(__powerpc__)
 #define MALLOC_STATIC_PAGESIZE 1
 #endif
 #endif
SPECS/thunderbird.spec
@@ -27,7 +27,9 @@
%define use_bundled_python 0
%endif
%if 0%{?rhel} < 8
%global use_rustts        1
%endif
%global dts_version       7
%global rst_version       7
%global llvm_version      7
@@ -89,7 +91,7 @@
Summary:        Mozilla Thunderbird mail/newsgroup client
Name:           thunderbird
Version:        60.4.0
Version:        60.5.0
Release:        1%{?dist}
URL:            http://www.mozilla.org/projects/thunderbird/
License:        MPLv1.1 or GPLv2+ or LGPLv2+
@@ -105,7 +107,7 @@
# From ftp://archive.mozilla.org/pub/thunderbird/releases/%{version}%{?ext_version}/source
Source0:        https://archive.mozilla.org/pub/thunderbird/releases/%{version}%{?pre_version}/source/thunderbird-%{version}%{?pre_version}.source.tar.xz
%if %{build_langpacks}
Source1:        thunderbird-langpacks-%{version}%{?ext_version}-20190103.tar.xz
Source1:        thunderbird-langpacks-%{version}%{?ext_version}-20190129.tar.xz
# Locales for lightning
Source2:        lightning-langpacks-%{version}.tar.xz
%endif
@@ -148,7 +150,6 @@
Patch40:        build-aarch64-skia.patch
Patch41:        build-debug-qcms.patch
Patch43:        xulrunner-24.0-jemalloc-ppc.patch
Patch44:        firefox-disable-dbus-remote.patch
Patch45:        build-disable-elfhack.patch
# Fedora/RHEL specific patches
@@ -233,6 +234,9 @@
BuildRequires:  rust-toolset-%{rst_version}-rust
%endif
%if 0%{?rhel} == 8
BuildRequires:  llvm >= %{llvm_version}
BuildRequires:  llvm-devel >= %{llvm_version}
BuildRequires:  clang >= %{llvm_version}
BuildRequires:  llvm-toolset-%{llvm_version}
BuildRequires:  llvm-toolset-%{llvm_version}-llvm-devel
%endif
@@ -331,10 +335,6 @@
%patch41 -p1 -b .build-debug-qcms
%endif
%patch43 -p1 -b .jemalloc-ppc
# Disable DBus remote on RHEL6 as it does not build here.
%if 0%{?rhel} == 6
%patch44 -p1 -b .disable-dbus-remote
%endif
%if 0%{?rhel} == 8
%patch45 -p1 -b .elfhack
%endif
@@ -346,7 +346,7 @@
# Fedora patches
%patch215 -p1 -b .addons
%patch219 -p2 -b .rhbz-1173156
%patch219 -p1 -b .rhbz-1173156
%patch224 -p1 -b .1170092
%patch225 -p1 -b .1005640-accept-lang
@@ -715,6 +715,9 @@
export MOZ_MAKE_FLAGS="$MOZ_SMP_FLAGS"
#export MOZ_SERVICES_SYNC="1"
export STRIP=/bin/true
%if 0%{?rhel} == 8
export LLVM_CONFIG=/usr/bin/llvm-config-64
%endif
./mach build -v
#---------------------------------------------------------------------
@@ -944,6 +947,7 @@
%{mozappdir}/platform.ini
%{mozappdir}/application.ini
%{mozappdir}/blocklist.xml
%{mozappdir}/features/*.xpi
%exclude %{mozappdir}/removed-files
%{_datadir}/icons/hicolor/16x16/apps/thunderbird.png
%{_datadir}/icons/hicolor/22x22/apps/thunderbird.png
@@ -983,6 +987,9 @@
#===============================================================================
%changelog
* Tue Jan 29 2019 Martin Stransky <stransky@redhat.com> - 60.5.0-1
- Update to 60.5.0
* Thu Jan  3 2019 Jan Horak <jhorak@redhat.com> - 60.4.0-1
- Update to 60.4.0