diff options
author | wolfbeast <mcwerewolf@wolfbeast.com> | 2019-09-06 10:29:38 +0200 |
---|---|---|
committer | wolfbeast <mcwerewolf@wolfbeast.com> | 2019-09-06 10:29:38 +0200 |
commit | 9fdff854ebf1fe1a118061d57fd0a2d6c5c7dfd7 (patch) | |
tree | 0f3678a1ed688c2f430b1cae5859916790908ac6 /dom/indexedDB/KeyPath.cpp | |
parent | ab6242a93b849b0a3c7525b16bc01dd3172fc167 (diff) | |
parent | 6db06749e2037029adc96660aafa5339ed609e60 (diff) | |
download | UXP-9fdff854ebf1fe1a118061d57fd0a2d6c5c7dfd7.tar UXP-9fdff854ebf1fe1a118061d57fd0a2d6c5c7dfd7.tar.gz UXP-9fdff854ebf1fe1a118061d57fd0a2d6c5c7dfd7.tar.lz UXP-9fdff854ebf1fe1a118061d57fd0a2d6c5c7dfd7.tar.xz UXP-9fdff854ebf1fe1a118061d57fd0a2d6c5c7dfd7.zip |
Merge branch 'master' into release
Diffstat (limited to 'dom/indexedDB/KeyPath.cpp')
-rw-r--r-- | dom/indexedDB/KeyPath.cpp | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/dom/indexedDB/KeyPath.cpp b/dom/indexedDB/KeyPath.cpp index 30edd8cd7..0221c9450 100644 --- a/dom/indexedDB/KeyPath.cpp +++ b/dom/indexedDB/KeyPath.cpp @@ -372,11 +372,13 @@ KeyPath::AppendStringWithValidation(const nsAString& aString) } nsresult -KeyPath::ExtractKey(JSContext* aCx, const JS::Value& aValue, Key& aKey) const +KeyPath::ExtractKey(JSContext* aCx, + const JS::Value& aValue, + Key& aKey, + bool aCallGetters) const { uint32_t len = mStrings.Length(); JS::Rooted<JS::Value> value(aCx); - aKey.Unset(); for (uint32_t i = 0; i < len; ++i) { @@ -388,7 +390,10 @@ KeyPath::ExtractKey(JSContext* aCx, const JS::Value& aValue, Key& aKey) const return rv; } - if (NS_FAILED(aKey.AppendItem(aCx, IsArray() && i == 0, value))) { + if (NS_FAILED(aKey.AppendItem(aCx, + IsArray() && i == 0, + value, + aCallGetters))) { NS_ASSERTION(aKey.IsUnset(), "Encoding error should unset"); return NS_ERROR_DOM_INDEXEDDB_DATA_ERR; } @@ -437,9 +442,12 @@ KeyPath::ExtractKeyAsJSVal(JSContext* aCx, const JS::Value& aValue, } nsresult -KeyPath::ExtractOrCreateKey(JSContext* aCx, const JS::Value& aValue, - Key& aKey, ExtractOrCreateKeyCallback aCallback, - void* aClosure) const +KeyPath::ExtractOrCreateKey(JSContext* aCx, + const JS::Value& aValue, + Key& aKey, + ExtractOrCreateKeyCallback aCallback, + void* aClosure, + bool aCallGetters) const { NS_ASSERTION(IsString(), "This doesn't make sense!"); @@ -455,7 +463,7 @@ KeyPath::ExtractOrCreateKey(JSContext* aCx, const JS::Value& aValue, return rv; } - if (NS_FAILED(aKey.AppendItem(aCx, false, value))) { + if (NS_FAILED(aKey.AppendItem(aCx, false, value, aCallGetters))) { NS_ASSERTION(aKey.IsUnset(), "Should be unset"); return value.isUndefined() ? NS_OK : NS_ERROR_DOM_INDEXEDDB_DATA_ERR; } |