diff --git a/test/browser/separate_metadata_later.cpp b/test/browser/separate_metadata_later.c similarity index 85% rename from test/browser/separate_metadata_later.cpp rename to test/browser/separate_metadata_later.c index 810c4b43748df..90b91cc39994d 100644 --- a/test/browser/separate_metadata_later.cpp +++ b/test/browser/separate_metadata_later.c @@ -5,8 +5,8 @@ #include -EMSCRIPTEN_KEEPALIVE extern "C" void finish() { - REPORT_RESULT(1); +EMSCRIPTEN_KEEPALIVE void finish() { + emscripten_force_exit(0); } int main() { @@ -17,7 +17,7 @@ int main() { Module["removeRunDependency"] = function(id) { real(id); if (id === "more.js.metadata") { - Module["_finish"](); + _finish(); } }; function loadChildScript(name, then) { @@ -29,5 +29,6 @@ int main() { loadChildScript("more.js"); }, 1); }); + emscripten_exit_with_live_runtime(); + return 99; } - diff --git a/test/test_browser.py b/test/test_browser.py index 202342ea0afc6..f52f8af5460e2 100644 --- a/test/test_browser.py +++ b/test/test_browser.py @@ -1413,10 +1413,9 @@ def test_fs_lz4fs_package(self): def test_separate_metadata_later(self): # see issue #6654 - we need to handle separate-metadata both when we run before # the main program, and when we are run later - create_file('data.dat', ' ') self.run_process([FILE_PACKAGER, 'more.data', '--preload', 'data.dat', '--separate-metadata', '--js-output=more.js']) - self.btest(Path('browser/separate_metadata_later.cpp'), '1', cflags=['-sFORCE_FILESYSTEM']) + self.btest_exit('separate_metadata_later.c', cflags=['-sFORCE_FILESYSTEM']) @requires_safari_version(260001, 'TODO: Fails with "Assertion failed: false"') # Fails in Safari 18.5 (20621.2.5.11.8) with Intel x64 CPU only. Passes on Safari 18.5 (20621.2.5.11.8) with ARM M1, Safari 17.6 (17618.3.11.11.7, 17618)/x64 and Safari 26.0.1 (21622.1.22.11.15)/M4 def test_idbstore(self):