From 5be5f4beae702c4458c111e11ad4c3df51fc4c83 Mon Sep 17 00:00:00 2001 From: Jack Magne Date: Mon, 8 Feb 2016 14:28:44 -0800 Subject: [PATCH] More xulrunner appeasment. --- esc-1.1.0-fix20.patch | 396 ++++++++++++++++++++++++++++++++++++++++++ esc-1.1.0-fix21.patch | 21 +++ esc.spec | 35 ++-- 3 files changed, 433 insertions(+), 19 deletions(-) create mode 100644 esc-1.1.0-fix20.patch create mode 100644 esc-1.1.0-fix21.patch diff --git a/esc-1.1.0-fix20.patch b/esc-1.1.0-fix20.patch new file mode 100644 index 0000000..11b670e --- /dev/null +++ b/esc-1.1.0-fix20.patch @@ -0,0 +1,396 @@ +diff -up ./esc/src/app/xpcom/Makefile.sdk.fix20 ./esc/src/app/xpcom/Makefile.sdk +--- ./esc/src/app/xpcom/Makefile.sdk.fix20 2015-04-07 17:29:25.406955513 -0700 ++++ ./esc/src/app/xpcom/Makefile.sdk 2015-04-07 18:32:07.330144841 -0700 +@@ -195,13 +195,13 @@ all:: export libs + + libs:: + +- $(PYTHON_BIN) $(GECKO_SDK_PATH)/bin/header.py --cachedir /tmp -o rhIKeyNotify.h -I $(GECKO_IDL_PATH) -I $(NSPR_INCLUDE) rhIKeyNotify.idl ++ $(PYTHON_BIN) $(GECKO_BIN_PATH)/header.py --cachedir /tmp -o rhIKeyNotify.h -I $(GECKO_IDL_PATH) -I $(NSPR_INCLUDE) rhIKeyNotify.idl + +- $(PYTHON_BIN) $(GECKO_SDK_PATH)/bin/typelib.py --cachedir /tmp -o rhIKeyNotify.xpt -I $(GECKO_IDL_PATH) -I $(NSPR_INCLUDE) rhIKeyNotify.idl ++ $(PYTHON_BIN) $(GECKO_BIN_PATH)/typelib.py --cachedir /tmp -o rhIKeyNotify.xpt -I $(GECKO_IDL_PATH) -I $(NSPR_INCLUDE) rhIKeyNotify.idl + +- $(PYTHON_BIN) $(GECKO_SDK_PATH)/bin/header.py --cachedir /tmp -o rhICoolKey.h -I $(GECKO_IDL_PATH) -I $(NSPR_INCLUDE) rhICoolKey.idl ++ $(PYTHON_BIN) $(GECKO_BIN_PATH)/header.py --cachedir /tmp -o rhICoolKey.h -I $(GECKO_IDL_PATH) -I $(NSPR_INCLUDE) rhICoolKey.idl + +- $(PYTHON_BIN) $(GECKO_SDK_PATH)/bin/typelib.py --cachedir /tmp -o rhICoolKey.xpt -I $(GECKO_IDL_PATH) -I $(NSPR_INCLUDE) rhICoolKey.idl ++ $(PYTHON_BIN) $(GECKO_BIN_PATH)/typelib.py --cachedir /tmp -o rhICoolKey.xpt -I $(GECKO_IDL_PATH) -I $(NSPR_INCLUDE) rhICoolKey.idl + + ifeq ($(OS_ARCH),Darwin) + $(CXX) $(CPPFLAGS) -c -o $(OBJECT) $(GECKO_CONFIG_INCLUDE) $(GECKO_DEFINES) $(GECKO_INCLUDES) $(COOL_INCLUDES) $(CXXFLAGS) $(FILES) +@@ -257,7 +257,7 @@ $(DEPLOY_OBJDIR): + mkdir $(DEPLOY_OBJDIR) + + cd $(CORE_DEPTH)/$(DEPLOY_OFFSET)/app/xul/esc; zip -r test.zip * -x *\CVS\* \*.fix*; unzip -d esc test.zip ; rm -f test.zip +- $(XUL_FRAMEWORK_BIN_PATH)/$(XULRUNNER_EXEC) --install-app $(CORE_DEPTH)$(DEPLOY_OFFSET)/app/xul/esc/esc $(DEPLOY_OBJDIR) ++ $(PYTHON_BIN) $(GECKO_BIN_PATH)/install_app.py $(CORE_DEPTH)$(DEPLOY_OFFSET)/app/xul/esc/esc $(DEPLOY_OBJDIR)/esc --appName esc + + ifeq ($(OS_ARCH), Darwin) + mkdir $(DEPLOY_OBJDIR)/$(XULRUNNER_FRAME_BASE) +diff -up ./esc/src/app/xpcom/rhCoolKey.cpp.fix20 ./esc/src/app/xpcom/rhCoolKey.cpp +--- ./esc/src/app/xpcom/rhCoolKey.cpp.fix20 2015-04-07 17:31:15.166792191 -0700 ++++ ./esc/src/app/xpcom/rhCoolKey.cpp 2015-04-07 18:24:16.454130223 -0700 +@@ -106,21 +106,23 @@ class CoolKeyShutdownObserver : public n + NS_DECL_ISUPPORTS + NS_DECL_NSIOBSERVER + +- ~CoolKeyShutdownObserver(); ++ private: ++ ~CoolKeyShutdownObserver(); + }; + +- NS_IMPL_ISUPPORTS1(CoolKeyShutdownObserver, nsIObserver) ++ NS_IMPL_ISUPPORTS(CoolKeyShutdownObserver, nsIObserver) + + CoolKeyShutdownObserver::~CoolKeyShutdownObserver() + { + char tBuff[56]; + PR_LOG( coolKeyLog, PR_LOG_DEBUG, ("%s CoolKeyShutdownObserver::~CoolKeyShutdownObserver \n",GetTStamp(tBuff,56))); + } +- ++ ++ + NS_IMETHODIMP + CoolKeyShutdownObserver::Observe(nsISupports *aSubject, + const char *aTopic, +- const PRUnichar *someData) ++ const char16_t *someData) + { + char tBuff[56]; + if (!strcmp(aTopic, NS_XPCOM_SHUTDOWN_OBSERVER_ID)) +@@ -1793,5 +1795,5 @@ static const mozilla::Module kCoolKeyMod + NSMODULE_DEFN(rhCoolKeyModule) = &kCoolKeyModule; + // + +-NS_IMPL_ISUPPORTS1(rhCoolKey,rhICoolKey) ++NS_IMPL_ISUPPORTS(rhCoolKey,rhICoolKey) + +diff -up ./esc/src/app/xpcom/rhCoolKey.h.fix20 ./esc/src/app/xpcom/rhCoolKey.h +--- ./esc/src/app/xpcom/rhCoolKey.h.fix20 2015-04-07 18:03:46.544134629 -0700 ++++ ./esc/src/app/xpcom/rhCoolKey.h 2015-04-07 18:25:33.828309642 -0700 +@@ -93,6 +93,7 @@ public: + rhCoolKey(); + + void ShutDownInstance(); ++private: + ~rhCoolKey(); + private: + static HRESULT Dispatch( rhICoolKey *listener, +diff -up ./esc/src/app/xpcom/tray/Makefile.sdk.fix20 ./esc/src/app/xpcom/tray/Makefile.sdk +--- ./esc/src/app/xpcom/tray/Makefile.sdk.fix20 2015-04-02 15:09:32.327346359 -0700 ++++ ./esc/src/app/xpcom/tray/Makefile.sdk 2015-04-02 15:12:17.987617741 -0700 +@@ -230,13 +230,13 @@ all:: export libs + libs:: + echo "PPC_BUILD $(PPC_BUILD)" + +- $(PYTHON_BIN) $(GECKO_SDK_PATH)/bin/header.py --cachedir=/tmp -o rhITray.h -I $(GECKO_IDL_PATH) -I $(NSPR_INCLUDE) rhITray.idl ++ $(PYTHON_BIN) $(GECKO_BIN_PATH)/header.py --cachedir=/tmp -o rhITray.h -I $(GECKO_IDL_PATH) -I $(NSPR_INCLUDE) rhITray.idl + +- $(PYTHON_BIN) $(GECKO_SDK_PATH)/bin/typelib.py --cachedir=/tmp -o rhITray.xpt -I $(GECKO_IDL_PATH) -I $(NSPR_INCLUDE) rhITray.idl ++ $(PYTHON_BIN) $(GECKO_BIN_PATH)/typelib.py --cachedir=/tmp -o rhITray.xpt -I $(GECKO_IDL_PATH) -I $(NSPR_INCLUDE) rhITray.idl + +- $(PYTHON_BIN) $(GECKO_SDK_PATH)/bin/header.py --cachedir=/tmp -o rhITrayWindNotify.h -I $(GECKO_IDL_PATH) -I $(NSPR_INCLUDE) rhITrayWindNotify.idl ++ $(PYTHON_BIN) $(GECKO_BIN_PATH)//header.py --cachedir=/tmp -o rhITrayWindNotify.h -I $(GECKO_IDL_PATH) -I $(NSPR_INCLUDE) rhITrayWindNotify.idl + +- $(PYTHON_BIN) $(GECKO_SDK_PATH)/bin/typelib.py --cachedir=/tmp -o rhITrayWindNotify.xpt -I $(GECKO_IDL_PATH) -I $(NSPR_INCLUDE) rhITrayWindNotify.idl ++ $(PYTHON_BIN) $(GECKO_BIN_PATH)/typelib.py --cachedir=/tmp -o rhITrayWindNotify.xpt -I $(GECKO_IDL_PATH) -I $(NSPR_INCLUDE) rhITrayWindNotify.idl + + ifeq ($(OS_ARCH),Darwin) + $(CXX) $(CPPFLAGS) -c -o $(OBJECT) $(GECKO_CONFIG_INCLUDE) $(GECKO_DEFINES) $(GECKO_INCLUDES) $(COOL_INCLUDES) $(CXXFLAGS) $(FILES) +diff -up ./esc/src/app/xpcom/tray/rhLinuxTray.cpp.fix20 ./esc/src/app/xpcom/tray/rhLinuxTray.cpp +--- ./esc/src/app/xpcom/tray/rhLinuxTray.cpp.fix20 2015-04-07 16:15:16.840118695 -0700 ++++ ./esc/src/app/xpcom/tray/rhLinuxTray.cpp 2015-04-07 16:15:39.047883270 -0700 +@@ -898,5 +898,5 @@ static const mozilla::Module kCoolKeyTra + // shared library. + NSMODULE_DEFN(rhCoolKeyTrayModule) = &kCoolKeyTrayModule; + +-NS_IMPL_ISUPPORTS1(rhTray,rhITray) ++NS_IMPL_ISUPPORTS(rhTray,rhITray) + +diff -up ./esc/src/app/xul/esc/chrome/content/esc/ESC.js.fix20 ./esc/src/app/xul/esc/chrome/content/esc/ESC.js +--- ./esc/src/app/xul/esc/chrome/content/esc/ESC.js.fix20 2015-04-09 17:58:37.203518142 -0700 ++++ ./esc/src/app/xul/esc/chrome/content/esc/ESC.js 2015-04-09 18:00:19.302492123 -0700 +@@ -57,6 +57,7 @@ const ESC_SECURITY_URL="esc.security.ur + const ESC_SECURE_URL="esc.secure.url"; + const ESC_GLOBAL_PHONE_HOME_URL= "esc.global.phone.home.url"; + const ESC_HIDE_FORMAT="esc.hide.format"; ++const ESC_ALLOW_NOTIFICATIONS="esc.allow.notifications"; + + const CLEAN_TOKEN = "cleanToken"; + const UNINITIALIZED = 1; +@@ -76,6 +77,7 @@ const ENROLL_WINDOW = "esc.xul"; + const ADMIN_WINDOW = "settings.xul"; + const HIDDEN_WINDOW = "hiddenWindow.xul"; + const SECURITY_WINDOW = "security.xul"; ++const PHONE_WINDOW = "config.xul"; + + + //Log level constants +@@ -230,10 +232,14 @@ var Status_Messages = new Array( + function DoPhoneHome(keyType,keyID) + { + CoolKeyLogMsg(PR_LOG_ALWAYS,"Attempting to phone home for Key " + keyID); ++ var allowNotify = null; + var callback = function (aResult) { + + recordMessage("In DoPhoneHome callback"); + ++ var allowNotify = DoCoolKeyGetConfigValue(ESC_ALLOW_NOTIFICATIONS); ++ ++ + var issuer = ""; + if(aResult == true) + { +@@ -241,7 +247,10 @@ function DoPhoneHome(keyType,keyID) + if(!issuer) + issuer = getBundleString("unknownIssuer"); + recordMessage("In DoPhoneHome callback success issuer " + issuer); +- TraySendNotificationMessage(getBundleString("keyInserted"),"\"" + issuer +"\"" + " " + getBundleString("keyInsertedComputer"),3,4000,GetESCNotifyIconPath(keyType,keyID)); ++ ++ if(allowNotify == "yes") { ++ TraySendNotificationMessage(getBundleString("keyInserted"),"\"" + issuer +"\"" + " " + getBundleString("keyInsertedComputer"),3,4000,GetESCNotifyIconPath(keyType,keyID)); ++ } + LogKeyInfo(keyType,keyID,"Key Inserted ..."); + UpdateRowWithPhoneHomeData(keyType,keyID); + recordMessage("cached issuer " + issuer); +@@ -262,7 +271,9 @@ function DoPhoneHome(keyType,keyID) + if(!issuer) + issuer = getBundleString("unknownIssuer"); + recordMessage("Phone home callback failed , issuer " + issuer); +- TraySendNotificationMessage(getBundleString("keyInserted"),"\"" + issuer +"\"" + " " + getBundleString("keyInsertedComputer"),3,4000,GetESCNotifyIconPath(keyType,keyID)); ++ if (allowNotify == "yes") { ++ TraySendNotificationMessage(getBundleString("keyInserted"),"\"" + issuer +"\"" + " " + getBundleString("keyInsertedComputer"),3,4000,GetESCNotifyIconPath(keyType,keyID)); ++ } + LogKeyInfo(keyType,keyID,"Key Inserted ..."); + } + } +@@ -271,6 +282,7 @@ function DoPhoneHome(keyType,keyID) + + var home = DoCoolKeyGetIssuerUrl(keyType,keyID); + ++ //home = null; + recordMessage("Returned IssuerURL " + home); + + if(IsPhoneHomeCached(keyID) && home) +@@ -279,7 +291,12 @@ function DoPhoneHome(keyType,keyID) + + recordMessage("Phone home info cached..."); + issuer = GetCoolKeyIssuer(keyType,keyID); +- TraySendNotificationMessage(getBundleString("keyInserted"),"\"" + issuer +"\"" + " " + getBundleString("keyInsertedComputer"),3,4000,GetESCNotifyIconPath(keyType,keyID)); ++ ++ allowNotify = DoCoolKeyGetConfigValue(ESC_ALLOW_NOTIFICATIONS); ++ if (allowNotify == "yes") { ++ TraySendNotificationMessage(getBundleString("keyInserted"),"\"" + issuer +"\"" + " " + getBundleString("keyInsertedComputer"),3,4000,GetESCNotifyIconPath(keyType,keyID)); ++ } ++ + LogKeyInfo(keyType,keyID,"Key Inserted ..."); + + var launchBrowserURL = GetCachedEnrolledTokenBrowserURL(keyID); +@@ -534,7 +551,11 @@ function GetAuthDataFromPopUp(aKeyType,a + keyUITable[aKeyID] = aUiData; + keyTypeTable[aKeyID] = aKeyType; + +- var child = window.open("chrome://esc/content/GenericAuth.xul", aKeyID, "chrome,centerscreen,width=400,height=250"); ++ var child = window.open("chrome://esc/content/GenericAuth.xul", aKeyID, "chrome,centerscreen,width=400,height=250,dialog"); ++ ++ if (child) { ++ child.setTimeout("focus()", 1000); ++ } + + curChildWindow = child; + } +@@ -1275,7 +1296,7 @@ function UpdateEnrollmentArea(keyType,ke + + var numUnenrolledKeys = DoGetNumUnenrolledCoolKeys(); + +- //alert("inserted " + inserted + " showFulUI " + showFullUI + " showExternalUI " + showExternalUI + " already enrolled " + alreadyEnrolled + " numUnenrolledKeys " + numUnenrolledKeys); ++ // alert("inserted " + inserted + " showFulUI " + showFullUI + " showExternalUI " + showExternalUI + " already enrolled " + alreadyEnrolled + " numUnenrolledKeys " + numUnenrolledKeys); + + + var ui_id = document.getElementById("esc-ui"); +@@ -1290,7 +1311,7 @@ function UpdateEnrollmentArea(keyType,ke + { + if(!numUnenrolledKeys) + { +- ui_id.setAttribute("src",null); ++ ui_id.setAttribute("src",""); + } + else + { +@@ -1427,14 +1448,19 @@ function UpdateEnrollmentArea(keyType,ke + HideItem(no_key_area); + } + ++ + if(!alreadyEnrolled && inserted && showExternalUI) + { + UpdateESCSize(); ++ gEnrollmentPage.setTimeout("focus();",3500); + return; + } + + if(!showExternalUI) + UpdateESCSize(); ++ ++ gEnrollmentPage.setTimeout("focus();",3500); ++ + } + + //Evaulate Password Quality +@@ -2006,7 +2032,7 @@ function SelectESCPage(keyType,keyID,pho + break; + } + +- //alert("SelectESCPage initialized " + keyUninitialized + " gEnrollmentPage " + gEnrollmentPage + " gFactoryMode " + gFactoryMode + " gHiddenPage " + gHiddenPage); ++ //alert("SelectESCPage uninitialized " + keyUninitialized + " gEnrollmentPage " + gEnrollmentPage + " gFactoryMode " + gFactoryMode + " gHiddenPage " + gHiddenPage + " phoneHomeFailed " + phoneHomeFailed + " no_launch_external_ui " + no_launch_external_ui); + + //Get the primary page windows if present + +@@ -2022,14 +2048,7 @@ function SelectESCPage(keyType,keyID,pho + + if(keyUninitialized == UNINITIALIZED && !phoneHomeFailed && !no_launch_external_ui ) //formatted uninitialized card + { +- if(enrollWnd) //Enrollment window is already up +- { +- enrollWnd.focus(); +- } +- else +- { +- launchESC(); +- } ++ launchESC(); + } + else + { +@@ -2975,8 +2994,9 @@ function OnCoolKeyInserted(keyType, keyI + + var uninitialized = 0; + +- recordMessage("Key inserted!" + "Window " + IdentifyWindow()); ++ var allowNotify = DoCoolKeyGetConfigValue(ESC_ALLOW_NOTIFICATIONS); + ++ recordMessage("Key inserted!" + "Window " + IdentifyWindow()); + if(gHiddenPage) + { + TrayShowNotificationIcon(); +@@ -2993,6 +3013,7 @@ function OnCoolKeyInserted(keyType, keyI + + gCurrentSelectedRow = row; + UpdateEnrollmentArea(keyType,keyID,1); ++ + } + + if(gAdminPage) +@@ -3017,7 +3038,9 @@ function OnCoolKeyInserted(keyType, keyI + if(!issuer ) + issuer = getBundleString("unknownIssuer"); + +- TraySendNotificationMessage(getBundleString("keyInserted"),"\"" + issuer +"\"" + " " + getBundleString("keyInsertedComputer"),3,4000,GetESCNotifyIconPath(keyType,keyID)); ++ if( allowNotify) { ++ TraySendNotificationMessage(getBundleString("keyInserted"),"\"" + issuer +"\"" + " " + getBundleString("keyInsertedComputer"),3,4000,GetESCNotifyIconPath(keyType,keyID)); ++ } + + } + +@@ -3037,6 +3060,8 @@ function OnCoolKeyRemoved(keyType, keyID + + var row = GetRowForKey(keyType, keyID); + ++ var allowNotify = DoCoolKeyGetConfigValue(ESC_ALLOW_NOTIFICATIONS); ++ + if(gHiddenPage) + { + if(curChildWindow) +@@ -3047,7 +3072,9 @@ function OnCoolKeyRemoved(keyType, keyID + var issuer = GetCoolKeyIssuer(keyType,keyID); + if(!issuer) + issuer = getBundleString("unknownIssuer"); +- TraySendNotificationMessage(getBundleString("keyRemoved"),"\"" + issuer + "\"" + " " + getBundleString("keyRemovedComputer"),1,4000,GetESCNotifyIconPath(keyType,keyID)); ++ if (allowNotify == "yes") { ++ TraySendNotificationMessage(getBundleString("keyRemoved"),"\"" + issuer + "\"" + " " + getBundleString("keyRemovedComputer"),1,4000,GetESCNotifyIconPath(keyType,keyID)); ++ } + LogKeyInfo(keyType,keyID, "Key Removed ..."); + + } +@@ -3345,6 +3372,7 @@ uiListener = + + if(url != esc_enroll_uri) + { ++ + MyAlert(getBundleString("errorEnrollmentUI")); + + if(uiListener) +@@ -3978,17 +4006,24 @@ function launchCONFIG(keyType,keyID) + platform = "mac"; + } + +- var wind = null; ++ var wind = IsPageWindowPresent(PHONE_WINDOW); + +- if(platform == "mac") +- { +- wind = window.openDialog("chrome://esc/content/config.xul",keyID,"chrome,centerscreen,resizable,modal=no"); +- } +- else +- { +- wind = window.openDialog("chrome://esc/content/config.xul",keyID,"chrome,centerscreen,resizable,modal=yes"); ++ if (!wind) { ++ if(platform == "mac") ++ { ++ wind = window.openDialog("chrome://esc/content/config.xul",keyID,"chrome,centerscreen,resizable,modal=no"); ++ } ++ else ++ { ++ wind = window.openDialog("chrome://esc/content/config.xul",keyID,"chrome,centerscreen,resizable"); ++ ++ } ++ } + ++ if(wind) { ++ wind.setTimeout("focus();",1500); + } ++ + } + + //Launch cert viewer if key has certs +@@ -4021,7 +4056,7 @@ function launchCertViewerIfCerts() + //Launch page to view card's certificates + function launchCertViewer() + { +- var wind = window.openDialog("chrome://esc/content/certManager.xul", "","chrome,centerscreen,modal=yes"); ++ var wind = window.openDialog("chrome://pippki/content/certManager.xul", "","chrome,centerscreen,modal=yes"); + } + + //Launch ESC admin page window +@@ -4046,12 +4081,12 @@ function launchESC() + + if(!enrollWnd) + { +- var wind = window.open("chrome://esc/content/esc.xul","","chrome,resizable,centerscreen,dialog"); ++ enrollWnd = window.open("chrome://esc/content/esc.xul","","chrome,resizable,centerscreen,dialog"); + + } +- else +- { +- enrollWnd.focus(); ++ ++ if(enrollWnd) { ++ enrollWnd.setTimeout("focus();",1500); + } + + } +diff -up ./esc/src/app/xul/esc/defaults/preferences/esc-prefs.js.fix20 ./esc/src/app/xul/esc/defaults/preferences/esc-prefs.js +--- ./esc/src/app/xul/esc/defaults/preferences/esc-prefs.js.fix20 2015-04-09 18:01:00.074082399 -0700 ++++ ./esc/src/app/xul/esc/defaults/preferences/esc-prefs.js 2015-04-09 18:03:45.160423403 -0700 +@@ -29,6 +29,10 @@ pref("esc.tps.message.timeout","90"); + + pref("esc.windows.do.capi","yes"); + ++#Do we allow card notifications? Default no. ++ ++pref("esc.allow.notifications", "yes"); ++ + + #Sample Security Officer Enrollment UI + diff --git a/esc-1.1.0-fix21.patch b/esc-1.1.0-fix21.patch new file mode 100644 index 0000000..2be5f75 --- /dev/null +++ b/esc-1.1.0-fix21.patch @@ -0,0 +1,21 @@ +diff -up ./esc/src/app/xpcom/rhCoolKey.cpp.fix21 ./esc/src/app/xpcom/rhCoolKey.cpp +--- ./esc/src/app/xpcom/rhCoolKey.cpp.fix21 2016-02-08 14:21:39.963531067 -0800 ++++ ./esc/src/app/xpcom/rhCoolKey.cpp 2016-02-08 14:22:04.811322599 -0800 +@@ -1237,7 +1237,7 @@ NS_IMETHODIMP rhCoolKey::GetCoolKeyCertN + char **array = NULL; + int num = nicknames.size(); + +- array = (char **) nsMemory::Alloc((sizeof(char *) *num)); ++ array = (char **) NS_Alloc((sizeof(char *) *num)); + + if(!array) + { +@@ -1291,7 +1291,7 @@ NS_IMETHODIMP rhCoolKey::GetAvailableCoo + return NS_OK; + } + +- array = (char **) nsMemory::Alloc((sizeof(char *) * numKeys)); ++ array = (char **) NS_Alloc((sizeof(char *) * numKeys)); + + if(!array) + { diff --git a/esc.spec b/esc.spec index 2394b64..d27b859 100644 --- a/esc.spec +++ b/esc.spec @@ -35,6 +35,8 @@ Patch16: esc-1.1.0-fix16.patch Patch17: esc-1.1.0-fix17.patch Patch18: esc-1.1.0-fix18.patch Patch19: esc-1.1.0-fix19.patch +Patch20: esc-1.1.0-fix20.patch +Patch21: esc-1.1.0-fix21.patch BuildRequires: doxygen fontconfig-devel freetype-devel >= 2.1 BuildRequires: glib2-devel libIDL-devel atk-devel gtk2-devel libjpeg-devel @@ -71,7 +73,6 @@ AutoReqProv: 0 %define escxuldir src/app/xul/esc %define escxulchromeicons %{escxuldir}/chrome/icons/default %define escdaemon escd -%define geckoversion 30.0 Source0: http://pki.fedoraproject.org/pki/sources/%name/%{escname}.tar.bz2 Source1: http://pki.fedoraproject.org/pki/sources/%name/esc @@ -108,12 +109,17 @@ cryptographic smartcards. %patch17 -p1 -b .fix17 %patch18 -p1 -b .fix18 %patch19 -p1 -b .fix19 +%patch20 -p1 -b .fix20 +%patch21 -p1 -b .fix21 r=$(uname -r | sed -e 's/\(^[^.]*\.[^.]*\).*/\1/') [ -f esc/coreconf/Linux$r.mk ] || ln -s Linux3.5.mk esc/coreconf/Linux$r.mk %build +%define geckoversion `rpm -qi xulrunner | grep Version | sed 's/[\t ]//g;/^$/d' | sed 's/Version://'` + + GECKO_SDK_PATH=%{_libdir}/xulrunner-devel-%{geckoversion}/sdk GECKO_BIN_PATH=%{_libdir}/xulrunner GECKO_INCLUDE_PATH=%{_includedir}/xulrunner-%{geckoversion} @@ -180,6 +186,7 @@ cd %{_builddir} cp %{escname}/esc/LICENSE $RPM_BUILD_ROOT/%{docdir} rm -f $RPM_BUILD_ROOT/%{escdir}/esc +rm -rf $RPM_BUILD_ROOT/%{escdir}/xulrunner echo "xulrunner ./application.ini \$* &" > $RPM_BUILD_ROOT/%{escdir}/esc @@ -196,24 +203,19 @@ rm -rf $RPM_BUILD_ROOT %files %defattr(-,root,root,-) -%dir %{escdir} %{escdir}/esc %{escdir}/escd %{escbindir}/esc %{escdir}/application.ini %{escdir}/chrome.manifest -%dir %{escdir}/chrome %{escdir}/chrome/chrome.manifest -%{escdir}/chrome/content/ -%{escdir}/chrome/locale/ -%dir %{escdir}/chrome/icons -%{escdir}/chrome/icons/default/ -%{escdir}/components/ +%{escdir}/chrome/content +%{escdir}/chrome/locale +%{escdir}/chrome/icons/default +%{escdir}/components -%dir %{escdir}/defaults -%dir %{escdir}/defaults/preferences %{escdir}/defaults/preferences/esc-prefs.js #%{escdir}/xulrunner @@ -241,16 +243,11 @@ if [ -x %{_bindir}/gtk-update-icon-cache ]; then fi %changelog -* Wed Feb 03 2016 Fedora Release Engineering - 1.1.0-29 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Sat Dec 12 2015 Michael Schwendt - 1.1.0-28 -- Include several missing directories. -- BuildRequires nss-static for -lcrmf (#717241) - -* Wed Jun 17 2015 Fedora Release Engineering - 1.1.0-27 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild +* Mon Feb 08 2016 Jack Magne =1.1.0-29 +- Apease latest xullrunner api changes. +* Thu Apr 09 2015 Jack Magne =1.1.0-27 +- More xulrunner adjustments. * Sat Aug 16 2014 Fedora Release Engineering - 1.1.0-26 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild