Bug 1285934: Report an error in case of OOM when copying the bytecode input; r?luke draft
authorBenjamin Bouvier <benj@benj.me>
Mon, 11 Jul 2016 14:57:19 +0200
changeset 386246 57339117385aa3e1d155a40802a069351c85d3ea
parent 386245 509ef85e1007899270cc05af1e422ce127562651
child 525061 9f9a99d7eb74f6673a926c11345e46a835bb1e91
push id22650
push userbenj@benj.me
push dateMon, 11 Jul 2016 12:57:39 +0000
reviewersluke
bugs1285934
milestone50.0a1
Bug 1285934: Report an error in case of OOM when copying the bytecode input; r?luke MozReview-Commit-ID: A6Jw1O3tu2c
js/src/asmjs/WasmJS.cpp
--- a/js/src/asmjs/WasmJS.cpp
+++ b/js/src/asmjs/WasmJS.cpp
@@ -126,18 +126,20 @@ GetImports(JSContext* cx, HandleObject i
 bool
 wasm::Eval(JSContext* cx, Handle<TypedArrayObject*> code, HandleObject importObj,
            MutableHandleWasmInstanceObject instanceObj)
 {
     if (!CheckCompilerSupport(cx))
         return false;
 
     Bytes bytecode;
-    if (!bytecode.append((uint8_t*)code->viewDataEither().unwrap(), code->byteLength()))
+    if (!bytecode.append((uint8_t*)code->viewDataEither().unwrap(), code->byteLength())) {
+        ReportOutOfMemory(cx);
         return false;
+    }
 
     CompileArgs compileArgs;
     if (!compileArgs.init(cx))
         return true;
 
     JS::AutoFilename af;
     if (DescribeScriptedCaller(cx, &af)) {
         compileArgs.filename = DuplicateString(cx, af.get());