Bug 1263882: Set a default value in DescribeScriptedCaller if the filename is null; r?luke
MozReview-Commit-ID: KTJGoH8KEAc
--- a/js/src/jit-test/tests/wasm/basic.js
+++ b/js/src/jit-test/tests/wasm/basic.js
@@ -342,16 +342,19 @@ var code = '(module (import "one" "" (re
var imports = {one:()=>1, two:()=>2};
assertEq(wasmEvalText(code.replace('BODY', '(call_import 0)'), imports)(), 1);
assertEq(wasmEvalText(code.replace('BODY', '(call_import 1)'), imports)(), 2);
assertEq(wasmEvalText(code.replace('BODY', '(call 0)'), imports)(), 3);
assertEq(wasmEvalText(code.replace('BODY', '(call 1)'), imports)(), 4);
assertEq(wasmEvalText(`(module (import "evalcx" "" (param i32) (result i32)) (func (result i32) (call_import 0 (i32.const 0))) (export "" 0))`, {evalcx})(), 0);
+if (typeof evaluate === 'function')
+ evaluate(`Wasm.instantiateModule(wasmTextToBinary('(module)')) `, { fileName: null });
+
var {v2i, i2i, i2v} = wasmEvalText(`(module
(type (func (result i32)))
(type (func (param i32) (result i32)))
(type (func (param i32)))
(func (type 0) (i32.const 13))
(func (type 0) (i32.const 42))
(func (type 1) (i32.add (get_local 0) (i32.const 1)))
(func (type 1) (i32.add (get_local 0) (i32.const 2)))
--- a/js/src/jsapi.cpp
+++ b/js/src/jsapi.cpp
@@ -6267,17 +6267,17 @@ void AutoFilename::setScriptSource(js::S
p->incref();
setUnowned(p->filename());
}
}
void AutoFilename::setUnowned(const char* filename)
{
MOZ_ASSERT(!get());
- filename_.as<const char*>() = filename;
+ filename_.as<const char*>() = filename ? filename : "";
}
void AutoFilename::setOwned(UniqueChars&& filename)
{
MOZ_ASSERT(!get());
filename_ = AsVariant(Move(filename));
}