suppress false positives in `ufuzz` (#4578)
authorAlex Lam S.L <alexlamsl@gmail.com>
Thu, 21 Jan 2021 18:33:00 +0000 (18:33 +0000)
committerGitHub <noreply@github.com>
Thu, 21 Jan 2021 18:33:00 +0000 (02:33 +0800)
test/sandbox.js
test/ufuzz/index.js
test/ufuzz/job.js

index bd4c7a8..707a71e 100644 (file)
@@ -226,7 +226,7 @@ function run_code_exec(code, toplevel, timeout) {
         });
     }
     try {
-        return execSync('"' + process.argv[0] + '" --max-old-space-size=4096', {
+        return execSync('"' + process.argv[0] + '" --max-old-space-size=2048', {
             encoding: "utf8",
             input: code,
             stdio: "pipe",
@@ -234,7 +234,7 @@ function run_code_exec(code, toplevel, timeout) {
         });
     } catch (ex) {
         var msg = ex.message.replace(/\r\n/g, "\n");
-        if (/ETIMEDOUT/.test(msg)) return new Error("Script execution timed out.");
+        if (/ETIMEDOUT|FATAL ERROR:/.test(msg)) return new Error("Script execution timed out.");
         var end = msg.indexOf("\n\n-----===== UNCAUGHT EXCEPTION =====-----\n\n");
         var details;
         if (end >= 0) {
index 01863e1..6dc2c63 100644 (file)
@@ -317,7 +317,6 @@ var VAR_NAMES = [
     "NaN",
     "Infinity",
     "arguments",
-    "parseInt",
     "async",
     "await",
 ];
@@ -1848,7 +1847,7 @@ function patch_try_catch(orig, toplevel) {
             }
             var new_code = code.slice(0, index) + insert + code.slice(index) + tail_throw;
             var result = sandbox.run_code(new_code, toplevel);
-            if (typeof result != "object" || typeof result.name != "string" || typeof result.message != "string") {
+            if (!sandbox.is_error(result)) {
                 if (!stack.filled && match[1]) stack.push({
                     code: code,
                     index: index && index - 1,
index 6edfba5..5cef23e 100644 (file)
@@ -2,7 +2,7 @@ var actions = require("./actions");
 var child_process = require("child_process");
 
 var args = [
-    "--max-old-space-size=4096",
+    "--max-old-space-size=2048",
     "test/ufuzz",
 ];
 var iterations;