From aaaa10ef6634b4423737dbbc3885d22e1d207159 Mon Sep 17 00:00:00 2001 From: Andreas Baumann Date: Thu, 3 Jun 2021 10:25:00 +0200 Subject: community/seamonkey: patching for CLEANUP clash --- community/seamonkey/PKGBUILD | 11 ++ .../seamonkey/seamonkey-2.53.7.1-CLEANUP.patch | 219 +++++++++++++++++++++ 2 files changed, 230 insertions(+) create mode 100644 community/seamonkey/seamonkey-2.53.7.1-CLEANUP.patch diff --git a/community/seamonkey/PKGBUILD b/community/seamonkey/PKGBUILD index e4c017a8..72135290 100644 --- a/community/seamonkey/PKGBUILD +++ b/community/seamonkey/PKGBUILD @@ -6,3 +6,14 @@ eval "$( export LDFLAGS="-Wl,--no-keep-memory" ' )" + +# nss 3.65 adds a global CLEANUP macro in 'nss/pk11hpke.h', collides with +# CLEANUP in enum in IDBTransaction (indexdb) +source+=('seamonkey-2.53.7.1-CLEANUP.patch') +sha256sums+=('7c0a7491ae5f76aa4b0b171c7dbc0bc108d7686da8741398f46a2b9b314152af') +eval "$( + declare -f prepare | \ + sed ' + /patch.*rust.*/ a \ patch -p1 < ../seamonkey-2.53.7.1-CLEANUP.patch + ' +)" diff --git a/community/seamonkey/seamonkey-2.53.7.1-CLEANUP.patch b/community/seamonkey/seamonkey-2.53.7.1-CLEANUP.patch new file mode 100644 index 00000000..253d0021 --- /dev/null +++ b/community/seamonkey/seamonkey-2.53.7.1-CLEANUP.patch @@ -0,0 +1,219 @@ +diff -rauN seamonkey-2.53.7.1/dom/indexedDB/ActorsParent.cpp seamonkey-2.53.7.1-CLEANUP-patch/dom/indexedDB/ActorsParent.cpp +--- seamonkey-2.53.7.1/dom/indexedDB/ActorsParent.cpp 2020-08-10 13:30:33.000000000 +0200 ++++ seamonkey-2.53.7.1-CLEANUP-patch/dom/indexedDB/ActorsParent.cpp 2021-06-03 09:50:00.029405152 +0200 +@@ -11381,7 +11381,7 @@ + MOZ_ASSERT(mDEBUGTransaction->GetMode() == IDBTransaction::READ_WRITE || + mDEBUGTransaction->GetMode() == + IDBTransaction::READ_WRITE_FLUSH || +- mDEBUGTransaction->GetMode() == IDBTransaction::CLEANUP || ++ mDEBUGTransaction->GetMode() == IDBTransaction::_CLEANUP || + mDEBUGTransaction->GetMode() == IDBTransaction::VERSION_CHANGE); + + if (NS_FAILED(mConnection->RollbackSavepoint())) { +@@ -11397,7 +11397,7 @@ + MOZ_ASSERT(aTransaction); + MOZ_ASSERT(aTransaction->GetMode() == IDBTransaction::READ_WRITE || + aTransaction->GetMode() == IDBTransaction::READ_WRITE_FLUSH || +- aTransaction->GetMode() == IDBTransaction::CLEANUP || ++ aTransaction->GetMode() == IDBTransaction::_CLEANUP || + aTransaction->GetMode() == IDBTransaction::VERSION_CHANGE); + + DatabaseConnection* connection = aTransaction->GetDatabase()->GetConnection(); +@@ -14540,7 +14540,7 @@ + if (NS_WARN_IF(aMode != IDBTransaction::READ_ONLY && + aMode != IDBTransaction::READ_WRITE && + aMode != IDBTransaction::READ_WRITE_FLUSH && +- aMode != IDBTransaction::CLEANUP)) { ++ aMode != IDBTransaction::_CLEANUP)) { + ASSERT_UNLESS_FUZZING(); + return nullptr; + } +@@ -14549,7 +14549,7 @@ + // has write access. + if (NS_WARN_IF((aMode == IDBTransaction::READ_WRITE || + aMode == IDBTransaction::READ_WRITE_FLUSH || +- aMode == IDBTransaction::CLEANUP) && ++ aMode == IDBTransaction::_CLEANUP) && + mPrincipalInfo.type() == PrincipalInfo::TSystemPrincipalInfo && + !mChromeWriteAccessAllowed)) { + return nullptr; +@@ -14615,7 +14615,7 @@ + MOZ_ASSERT(aMode == IDBTransaction::READ_ONLY || + aMode == IDBTransaction::READ_WRITE || + aMode == IDBTransaction::READ_WRITE_FLUSH || +- aMode == IDBTransaction::CLEANUP); ++ aMode == IDBTransaction::_CLEANUP); + MOZ_ASSERT(!mClosed); + + if (IsInvalidated()) { +@@ -14778,7 +14778,7 @@ + + Transaction()->SetActiveOnConnectionThread(); + +- if (Transaction()->GetMode() == IDBTransaction::CLEANUP) { ++ if (Transaction()->GetMode() == IDBTransaction::_CLEANUP) { + nsresult rv = aConnection->DisableQuotaChecks(); + if (NS_WARN_IF(NS_FAILED(rv))) { + return rv; +@@ -15097,7 +15097,7 @@ + case RequestParams::TObjectStoreDeleteParams: { + if (NS_WARN_IF(mMode != IDBTransaction::READ_WRITE && + mMode != IDBTransaction::READ_WRITE_FLUSH && +- mMode != IDBTransaction::CLEANUP && ++ mMode != IDBTransaction::_CLEANUP && + mMode != IDBTransaction::VERSION_CHANGE)) { + ASSERT_UNLESS_FUZZING(); + return false; +@@ -15121,7 +15121,7 @@ + case RequestParams::TObjectStoreClearParams: { + if (NS_WARN_IF(mMode != IDBTransaction::READ_WRITE && + mMode != IDBTransaction::READ_WRITE_FLUSH && +- mMode != IDBTransaction::CLEANUP && ++ mMode != IDBTransaction::_CLEANUP && + mMode != IDBTransaction::VERSION_CHANGE)) { + ASSERT_UNLESS_FUZZING(); + return false; +@@ -23880,7 +23880,7 @@ + mTransaction->AssertIsOnConnectionThread(); + MOZ_ASSERT(mTransaction->GetMode() == IDBTransaction::READ_WRITE || + mTransaction->GetMode() == IDBTransaction::READ_WRITE_FLUSH || +- mTransaction->GetMode() == IDBTransaction::CLEANUP || ++ mTransaction->GetMode() == IDBTransaction::_CLEANUP || + mTransaction->GetMode() == IDBTransaction::VERSION_CHANGE); + + const nsTArray>& metadataArray = +@@ -23948,7 +23948,7 @@ + mTransaction->AssertIsOnConnectionThread(); + MOZ_ASSERT(mTransaction->GetMode() == IDBTransaction::READ_WRITE || + mTransaction->GetMode() == IDBTransaction::READ_WRITE_FLUSH || +- mTransaction->GetMode() == IDBTransaction::CLEANUP || ++ mTransaction->GetMode() == IDBTransaction::_CLEANUP || + mTransaction->GetMode() == IDBTransaction::VERSION_CHANGE); + + nsTArray>& metadataArray = +@@ -24080,7 +24080,7 @@ + + connection->FinishWriteTransaction(); + +- if (mTransaction->GetMode() == IDBTransaction::CLEANUP) { ++ if (mTransaction->GetMode() == IDBTransaction::_CLEANUP) { + connection->DoIdleProcessing(/* aNeedsCheckpoint */ true); + + connection->EnableQuotaChecks(); +diff -rauN seamonkey-2.53.7.1/dom/indexedDB/IDBCursor.cpp seamonkey-2.53.7.1-CLEANUP-patch/dom/indexedDB/IDBCursor.cpp +--- seamonkey-2.53.7.1/dom/indexedDB/IDBCursor.cpp 2020-08-10 13:30:33.000000000 +0200 ++++ seamonkey-2.53.7.1-CLEANUP-patch/dom/indexedDB/IDBCursor.cpp 2021-06-03 09:50:17.112733298 +0200 +@@ -686,7 +686,7 @@ + return nullptr; + } + +- if (mTransaction->GetMode() == IDBTransaction::CLEANUP || ++ if (mTransaction->GetMode() == IDBTransaction::_CLEANUP || + IsSourceDeleted() || + !mHaveValue || + mType == Type_ObjectStoreKey || +diff -rauN seamonkey-2.53.7.1/dom/indexedDB/IDBDatabase.cpp seamonkey-2.53.7.1-CLEANUP-patch/dom/indexedDB/IDBDatabase.cpp +--- seamonkey-2.53.7.1/dom/indexedDB/IDBDatabase.cpp 2020-04-01 13:01:50.000000000 +0200 ++++ seamonkey-2.53.7.1-CLEANUP-patch/dom/indexedDB/IDBDatabase.cpp 2021-06-03 09:49:17.882753478 +0200 +@@ -673,7 +673,7 @@ + break; + case IDBTransactionMode::Readwrite: + if (mQuotaExceeded) { +- mode = IDBTransaction::CLEANUP; ++ mode = IDBTransaction::_CLEANUP; + mQuotaExceeded = false; + } else { + mode = IDBTransaction::READ_WRITE; +@@ -683,7 +683,7 @@ + mode = IDBTransaction::READ_WRITE_FLUSH; + break; + case IDBTransactionMode::Cleanup: +- mode = IDBTransaction::CLEANUP; ++ mode = IDBTransaction::_CLEANUP; + mQuotaExceeded = false; + break; + case IDBTransactionMode::Versionchange: +@@ -717,7 +717,7 @@ + + transaction->SetBackgroundActor(actor); + +- if (mode == IDBTransaction::CLEANUP) { ++ if (mode == IDBTransaction::_CLEANUP) { + ExpireFileActors(/* aExpireAll */ true); + } + +@@ -870,7 +870,7 @@ + // We warn for any transactions that could have written data. + case IDBTransaction::READ_WRITE: + case IDBTransaction::READ_WRITE_FLUSH: +- case IDBTransaction::CLEANUP: ++ case IDBTransaction::_CLEANUP: + case IDBTransaction::VERSION_CHANGE: + transactionsThatNeedWarning.AppendElement(transaction); + break; +diff -rauN seamonkey-2.53.7.1/dom/indexedDB/IDBObjectStore.cpp seamonkey-2.53.7.1-CLEANUP-patch/dom/indexedDB/IDBObjectStore.cpp +--- seamonkey-2.53.7.1/dom/indexedDB/IDBObjectStore.cpp 2020-08-10 13:30:33.000000000 +0200 ++++ seamonkey-2.53.7.1-CLEANUP-patch/dom/indexedDB/IDBObjectStore.cpp 2021-06-03 09:50:08.506069171 +0200 +@@ -1546,7 +1546,7 @@ + MOZ_ASSERT(aCx); + MOZ_ASSERT_IF(aFromCursor, aOverwrite); + +- if (mTransaction->GetMode() == IDBTransaction::CLEANUP || ++ if (mTransaction->GetMode() == IDBTransaction::_CLEANUP || + mDeletedSpec) { + aRv.Throw(NS_ERROR_DOM_INDEXEDDB_NOT_ALLOWED_ERR); + return nullptr; +diff -rauN seamonkey-2.53.7.1/dom/indexedDB/IDBTransaction.cpp seamonkey-2.53.7.1-CLEANUP-patch/dom/indexedDB/IDBTransaction.cpp +--- seamonkey-2.53.7.1/dom/indexedDB/IDBTransaction.cpp 2020-02-18 00:37:49.000000000 +0100 ++++ seamonkey-2.53.7.1-CLEANUP-patch/dom/indexedDB/IDBTransaction.cpp 2021-06-03 09:49:38.769412315 +0200 +@@ -221,7 +221,7 @@ + MOZ_ASSERT(aMode == READ_ONLY || + aMode == READ_WRITE || + aMode == READ_WRITE_FLUSH || +- aMode == CLEANUP); ++ aMode == _CLEANUP); + + RefPtr transaction = + new IDBTransaction(aDatabase, aObjectStoreNames, aMode); +@@ -913,7 +913,7 @@ + case READ_WRITE_FLUSH: + return IDBTransactionMode::Readwriteflush; + +- case CLEANUP: ++ case _CLEANUP: + return IDBTransactionMode::Cleanup; + + case VERSION_CHANGE: +diff -rauN seamonkey-2.53.7.1/dom/indexedDB/IDBTransaction.h seamonkey-2.53.7.1-CLEANUP-patch/dom/indexedDB/IDBTransaction.h +--- seamonkey-2.53.7.1/dom/indexedDB/IDBTransaction.h 2020-02-18 00:37:49.000000000 +0100 ++++ seamonkey-2.53.7.1-CLEANUP-patch/dom/indexedDB/IDBTransaction.h 2021-06-03 09:50:53.802723917 +0200 +@@ -59,7 +59,7 @@ + READ_ONLY = 0, + READ_WRITE, + READ_WRITE_FLUSH, +- CLEANUP, ++ _CLEANUP, + VERSION_CHANGE, + + // Only needed for IPC serialization helper, should never be used in code. +@@ -194,7 +194,7 @@ + AssertIsOnOwningThread(); + return mMode == READ_WRITE || + mMode == READ_WRITE_FLUSH || +- mMode == CLEANUP || ++ mMode == _CLEANUP || + mMode == VERSION_CHANGE; + } + +diff -rauN seamonkey-2.53.7.1/dom/indexedDB/ProfilerHelpers.h seamonkey-2.53.7.1-CLEANUP-patch/dom/indexedDB/ProfilerHelpers.h +--- seamonkey-2.53.7.1/dom/indexedDB/ProfilerHelpers.h 2020-02-18 00:37:49.000000000 +0100 ++++ seamonkey-2.53.7.1-CLEANUP-patch/dom/indexedDB/ProfilerHelpers.h 2021-06-03 09:49:29.132749162 +0200 +@@ -130,7 +130,7 @@ + case IDBTransaction::READ_WRITE_FLUSH: + AppendLiteral("\"readwriteflush\""); + break; +- case IDBTransaction::CLEANUP: ++ case IDBTransaction::_CLEANUP: + AppendLiteral("\"cleanup\""); + break; + case IDBTransaction::VERSION_CHANGE: -- cgit v1.2.3-70-g09d2