author | Lars T Hansen <lhansen@mozilla.com> |
Mon, 25 Feb 2019 15:46:31 +0100 | |
changeset 461636 | b299e2b9886134da1abdc0d58459bd59d3ab0a88 |
parent 461635 | f5580a62e4e64030319bda7dec10bff4bc1d38c2 |
child 461637 | 8eb14440dc5b45373528a2feb57e03a45254fcc8 |
push id | 35626 |
push user | csabou@mozilla.com |
push date | Thu, 28 Feb 2019 11:31:08 +0000 |
treeherder | mozilla-central@2ea0c1db7e60 [default view] [failures only] |
perfherder | [talos] [build metrics] [platform microbench] (compared to previous push) |
reviewers | jandem |
bugs | 1530362 |
milestone | 67.0a1 |
first release with | nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
|
last release without | nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
|
--- a/js/src/wasm/WasmModule.cpp +++ b/js/src/wasm/WasmModule.cpp @@ -1170,20 +1170,22 @@ static bool CreateExportObject(JSContext #ifdef ENABLE_WASM_GC static bool MakeStructField(JSContext* cx, const ValType& v, bool isMutable, const char* format, uint32_t fieldNo, AutoIdVector* ids, AutoValueVector* fieldTypeObjs, Vector<StructFieldProps>* fieldProps) { char buf[20]; sprintf(buf, format, fieldNo); - RootedString str(cx, JS_AtomizeAndPinString(cx, buf)); - if (!str) { + + JSAtom* atom = Atomize(cx, buf, strlen(buf)); + if (!atom) { return false; } + RootedId id(cx, AtomToId(atom)); StructFieldProps props; props.isMutable = isMutable; Rooted<TypeDescr*> t(cx); switch (v.code()) { case ValType::I32: t = GlobalObject::getOrCreateScalarTypeDescr(cx, cx->global(), @@ -1213,17 +1215,17 @@ static bool MakeStructField(JSContext* c t = GlobalObject::getOrCreateReferenceTypeDescr( cx, cx->global(), ReferenceType::TYPE_WASM_ANYREF); break; default: MOZ_CRASH("Bad field type"); } MOZ_ASSERT(t != nullptr); - if (!ids->append(INTERNED_STRING_TO_JSID(cx, str))) { + if (!ids->append(id)) { return false; } if (!fieldTypeObjs->append(ObjectValue(*t))) { return false; } if (!fieldProps->append(props)) {