71 lines
3.0 KiB
Diff
71 lines
3.0 KiB
Diff
|
Workaround GCC/Clang6 not supporting class-temporary#6.7 [1]
|
||
|
Bugs:
|
||
|
+ https://bugzilla.mozilla.org/show_bug.cgi?id=1601707
|
||
|
+ http://gcc.gnu.org/PR92831
|
||
|
+ https://bugzilla.redhat.com/show_bug.cgi?id=1779082
|
||
|
|
||
|
[1] http://eel.is/c++draft/class.temporary#6.7
|
||
|
|
||
|
diff --git a/dom/indexedDB/ActorsParent.cpp b/dom/indexedDB/ActorsParent.cpp
|
||
|
--- a/dom/indexedDB/ActorsParent.cpp
|
||
|
+++ b/dom/indexedDB/ActorsParent.cpp
|
||
|
@@ -24311,11 +24311,11 @@
|
||
|
// if we allow overwrite or not. By not allowing overwrite we raise
|
||
|
// detectable errors rather than corrupting data.
|
||
|
DatabaseConnection::CachedStatement stmt;
|
||
|
- const auto& optReplaceDirective = (!mOverwrite || keyUnset)
|
||
|
- ? NS_LITERAL_CSTRING("")
|
||
|
- : NS_LITERAL_CSTRING("OR REPLACE ");
|
||
|
rv = aConnection->GetCachedStatement(
|
||
|
- NS_LITERAL_CSTRING("INSERT ") + optReplaceDirective +
|
||
|
+ NS_LITERAL_CSTRING("INSERT ") +
|
||
|
+ ((!mOverwrite || keyUnset)
|
||
|
+ ? NS_LITERAL_CSTRING("")
|
||
|
+ : NS_LITERAL_CSTRING("OR REPLACE ")) +
|
||
|
NS_LITERAL_CSTRING("INTO object_data "
|
||
|
"(object_store_id, key, file_ids, data) "
|
||
|
"VALUES (:") +
|
||
|
@@ -26076,9 +26076,6 @@
|
||
|
|
||
|
const bool usingKeyRange = mOptionalKeyRange.isSome();
|
||
|
|
||
|
- const auto& indexTable = mCursor->mUniqueIndex
|
||
|
- ? NS_LITERAL_CSTRING("unique_index_data")
|
||
|
- : NS_LITERAL_CSTRING("index_data");
|
||
|
|
||
|
NS_NAMED_LITERAL_CSTRING(sortColumn, "sort_column");
|
||
|
|
||
|
@@ -26099,7 +26096,9 @@
|
||
|
"object_data.file_ids, "
|
||
|
"object_data.data "
|
||
|
"FROM ") +
|
||
|
- indexTable +
|
||
|
+ (mCursor->mUniqueIndex
|
||
|
+ ? NS_LITERAL_CSTRING("unique_index_data")
|
||
|
+ : NS_LITERAL_CSTRING("index_data")) +
|
||
|
NS_LITERAL_CSTRING(
|
||
|
" AS index_table "
|
||
|
"JOIN object_data "
|
||
|
@@ -26198,9 +26197,6 @@
|
||
|
|
||
|
const bool usingKeyRange = mOptionalKeyRange.isSome();
|
||
|
|
||
|
- const auto& table = mCursor->mUniqueIndex
|
||
|
- ? NS_LITERAL_CSTRING("unique_index_data")
|
||
|
- : NS_LITERAL_CSTRING("index_data");
|
||
|
|
||
|
NS_NAMED_LITERAL_CSTRING(sortColumn, "sort_column");
|
||
|
|
||
|
@@ -26218,7 +26214,10 @@
|
||
|
NS_LITERAL_CSTRING(
|
||
|
"object_data_key "
|
||
|
" FROM ") +
|
||
|
- table + NS_LITERAL_CSTRING(" WHERE index_id = :") +
|
||
|
+ (mCursor->mUniqueIndex
|
||
|
+ ? NS_LITERAL_CSTRING("unique_index_data")
|
||
|
+ : NS_LITERAL_CSTRING("index_data")) +
|
||
|
+ NS_LITERAL_CSTRING(" WHERE index_id = :") +
|
||
|
kStmtParamNameId;
|
||
|
|
||
|
const auto keyRangeClause =
|