diff options
Diffstat (limited to 'js/src/vm/StringType.cpp')
-rw-r--r-- | js/src/vm/StringType.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/js/src/vm/StringType.cpp b/js/src/vm/StringType.cpp index 03f6a7e1ac..63afd8864b 100644 --- a/js/src/vm/StringType.cpp +++ b/js/src/vm/StringType.cpp @@ -2224,10 +2224,12 @@ void JSInlineString::dumpOwnRepresentationFields(js::JSONPrinter& json) const {} void JSLinearString::dumpOwnRepresentationFields(js::JSONPrinter& json) const { if (!isInline()) { - js::gc::StoreBuffer* sb = storeBuffer(); - bool inNursery = sb && sb->nursery().isInside(nonInlineCharsRaw()); - - json.boolProperty("inNursery", inNursery); + // Include whether the chars are in the nursery even for tenured + // strings, which should always be false. For investigating bugs, it's + // better to not assume that. + js::Nursery& nursery = runtimeFromMainThread()->gc.nursery(); + bool inNursery = nursery.isInside(nonInlineCharsRaw()); + json.boolProperty("charsInNursery", inNursery); } } #endif |