From 3e7220555e925878710e2c9279fc45448eabd6e2 Mon Sep 17 00:00:00 2001 From: Sam Clegg Date: Tue, 28 Jan 2025 15:48:06 -0800 Subject: [PATCH] Make more use of optional chaining. NFC I found all these sites using: ``` $ git grep -n "if (\(.*\) && \1\>.*)" src/ ``` --- src/lib/libbrowser.js | 2 +- src/lib/libeventloop.js | 2 +- src/lib/libglemu.js | 2 +- src/lib/libsdl.js | 6 +++--- src/lib/libstack_trace.js | 4 ++-- src/lib/libtrace.js | 2 +- src/lib/libtty.js | 4 ++-- src/lib/libwebgl.js | 2 +- src/polyfill/bigint64array.js | 2 +- test/other/codesize/test_codesize_cxx_ctors1.gzsize | 2 +- test/other/codesize/test_codesize_cxx_ctors1.jssize | 2 +- test/other/codesize/test_codesize_cxx_ctors2.gzsize | 2 +- test/other/codesize/test_codesize_cxx_ctors2.jssize | 2 +- test/other/codesize/test_codesize_cxx_except.gzsize | 2 +- test/other/codesize/test_codesize_cxx_except.jssize | 2 +- test/other/codesize/test_codesize_cxx_except_wasm.gzsize | 2 +- test/other/codesize/test_codesize_cxx_except_wasm.jssize | 2 +- .../codesize/test_codesize_cxx_except_wasm_legacy.gzsize | 2 +- .../codesize/test_codesize_cxx_except_wasm_legacy.jssize | 2 +- test/other/codesize/test_codesize_cxx_lto.gzsize | 2 +- test/other/codesize/test_codesize_cxx_lto.jssize | 2 +- test/other/codesize/test_codesize_cxx_mangle.gzsize | 2 +- test/other/codesize/test_codesize_cxx_mangle.jssize | 2 +- test/other/codesize/test_codesize_cxx_noexcept.gzsize | 2 +- test/other/codesize/test_codesize_cxx_noexcept.jssize | 2 +- test/other/codesize/test_codesize_files_js_fs.gzsize | 2 +- test/other/codesize/test_codesize_files_js_fs.jssize | 2 +- 27 files changed, 31 insertions(+), 31 deletions(-) diff --git a/src/lib/libbrowser.js b/src/lib/libbrowser.js index 5dad4252782cb..e13e8b21dfcca 100644 --- a/src/lib/libbrowser.js +++ b/src/lib/libbrowser.js @@ -552,7 +552,7 @@ var LibraryBrowser = { } var w = wNative; var h = hNative; - if (Module['forcedAspectRatio'] && Module['forcedAspectRatio'] > 0) { + if (Module['forcedAspectRatio'] > 0) { if (w/h < Module['forcedAspectRatio']) { w = Math.round(h * Module['forcedAspectRatio']); } else { diff --git a/src/lib/libeventloop.js b/src/lib/libeventloop.js index cd95eb3717a39..7e0610272ec1b 100644 --- a/src/lib/libeventloop.js +++ b/src/lib/libeventloop.js @@ -489,7 +489,7 @@ LibraryJSEventLoop = { } if (!noSetTiming) { - if (fps && fps > 0) { + if (fps > 0) { _emscripten_set_main_loop_timing({{{ cDefs.EM_TIMING_SETTIMEOUT }}}, 1000.0 / fps); } else { // Do rAF by rendering each frame (no decimating) diff --git a/src/lib/libglemu.js b/src/lib/libglemu.js index 196a889f09213..e84ea0b9f7b62 100644 --- a/src/lib/libglemu.js +++ b/src/lib/libglemu.js @@ -3574,7 +3574,7 @@ var LibraryGLEmulation = { for (var i = 0; i < n; i++) { var id = {{{ makeGetValue('vaos', 'i*4', 'i32') }}}; GLEmulation.vaos[id] = null; - if (GLEmulation.currentVao && GLEmulation.currentVao.id == id) GLEmulation.currentVao = null; + if (GLEmulation.currentVao?.id == id) GLEmulation.currentVao = null; } }, $emulGlIsVertexArray: (array) => { diff --git a/src/lib/libsdl.js b/src/lib/libsdl.js index b8319422e37e1..fb1db7d434171 100644 --- a/src/lib/libsdl.js +++ b/src/lib/libsdl.js @@ -1108,7 +1108,7 @@ var LibrarySDL = { // since the browser engine handles that for us. Therefore, in JS we just // maintain a list of channels and return IDs for them to the SDL consumer. allocateChannels(num) { // called from Mix_AllocateChannels and init - if (SDL.numChannels && SDL.numChannels >= num && num != 0) return; + if (SDL.numChannels >= num && num != 0) return; SDL.numChannels = num; SDL.channels = []; for (var i = 0; i < num; i++) { @@ -3506,7 +3506,7 @@ var LibrarySDL = { SDL_JoystickGetAxis__proxy: 'sync', SDL_JoystickGetAxis: (joystick, axis) => { var gamepad = SDL.getGamepad(joystick - 1); - if (gamepad && gamepad.axes.length > axis) { + if (gamepad?.axes.length > axis) { return SDL.joystickAxisValueConversion(gamepad.axes[axis]); } return 0; @@ -3519,7 +3519,7 @@ var LibrarySDL = { SDL_JoystickGetButton__proxy: 'sync', SDL_JoystickGetButton: (joystick, button) => { var gamepad = SDL.getGamepad(joystick - 1); - if (gamepad && gamepad.buttons.length > button) { + if (gamepad?.buttons.length > button) { return SDL.getJoystickButtonState(gamepad.buttons[button]) ? 1 : 0; } return 0; diff --git a/src/lib/libstack_trace.js b/src/lib/libstack_trace.js index b5c92f41d651d..c8d00b299c012 100644 --- a/src/lib/libstack_trace.js +++ b/src/lib/libstack_trace.js @@ -50,14 +50,14 @@ var LibraryStackTrace = { var column = 0; var parts = chromeRe.exec(line); - if (parts && parts.length == 5) { + if (parts?.length == 5) { symbolName = parts[1]; file = parts[2]; lineno = parts[3]; column = parts[4]; } else { parts = newFirefoxRe.exec(line) || firefoxRe.exec(line); - if (parts && parts.length >= 4) { + if (parts?.length >= 4) { symbolName = parts[1]; file = parts[2]; lineno = parts[3]; diff --git a/src/lib/libtrace.js b/src/lib/libtrace.js index e356881d0de00..c50c0de904f4c 100644 --- a/src/lib/libtrace.js +++ b/src/lib/libtrace.js @@ -92,7 +92,7 @@ var LibraryTracing = { }, configureForGoogleWTF: () => { - if (window && window['wtf']) { + if (window?.['wtf']) { EmscriptenTrace.googleWTFEnabled = true; } else { out('GOOGLE WTF NOT AVAILABLE TO ENABLE'); diff --git a/src/lib/libtty.js b/src/lib/libtty.js index 6889cf157588a..ba392b12c32ff 100644 --- a/src/lib/libtty.js +++ b/src/lib/libtty.js @@ -113,7 +113,7 @@ addToLibrary({ } }, fsync(tty) { - if (tty.output && tty.output.length > 0) { + if (tty.output?.length > 0) { out(UTF8ArrayToString(tty.output)); tty.output = []; } @@ -150,7 +150,7 @@ addToLibrary({ } }, fsync(tty) { - if (tty.output && tty.output.length > 0) { + if (tty.output?.length > 0) { err(UTF8ArrayToString(tty.output)); tty.output = []; } diff --git a/src/lib/libwebgl.js b/src/lib/libwebgl.js index ee47626027f1f..573842fee446a 100644 --- a/src/lib/libwebgl.js +++ b/src/lib/libwebgl.js @@ -1184,7 +1184,7 @@ for (/**@suppress{duplicate}*/var i = 0; i <= {{{ GL_POOL_TEMP_BUFFERS_SIZE }}}; } // Make sure the canvas object no longer refers to the context object so // there are no GC surprises. - if (GL.contexts[contextHandle] && GL.contexts[contextHandle].GLctx.canvas) { + if (GL.contexts[contextHandle]?.GLctx?.canvas) { GL.contexts[contextHandle].GLctx.canvas.GLctxObject = undefined; } #if PTHREADS diff --git a/src/polyfill/bigint64array.js b/src/polyfill/bigint64array.js index e237e19d2224c..896634fd0d4ac 100644 --- a/src/polyfill/bigint64array.js +++ b/src/polyfill/bigint64array.js @@ -29,7 +29,7 @@ if (typeof globalThis.BigInt64Array === "undefined") { } var orig_array; if (!ArrayBuffer.isView(array)) { - if (array.constructor && array.constructor.name === "ArrayBuffer") { + if (array.constructor?.name === "ArrayBuffer") { array = new Uint32Array(array); } else { orig_array = array; diff --git a/test/other/codesize/test_codesize_cxx_ctors1.gzsize b/test/other/codesize/test_codesize_cxx_ctors1.gzsize index c85ebbc5b60b2..d7bec804220ec 100644 --- a/test/other/codesize/test_codesize_cxx_ctors1.gzsize +++ b/test/other/codesize/test_codesize_cxx_ctors1.gzsize @@ -1 +1 @@ -8353 +8350 diff --git a/test/other/codesize/test_codesize_cxx_ctors1.jssize b/test/other/codesize/test_codesize_cxx_ctors1.jssize index 41b5f47b2a7c8..21ce7fe7a474d 100644 --- a/test/other/codesize/test_codesize_cxx_ctors1.jssize +++ b/test/other/codesize/test_codesize_cxx_ctors1.jssize @@ -1 +1 @@ -20285 +20267 diff --git a/test/other/codesize/test_codesize_cxx_ctors2.gzsize b/test/other/codesize/test_codesize_cxx_ctors2.gzsize index 86aa6eff1baa3..c30d0363d4564 100644 --- a/test/other/codesize/test_codesize_cxx_ctors2.gzsize +++ b/test/other/codesize/test_codesize_cxx_ctors2.gzsize @@ -1 +1 @@ -8335 +8333 diff --git a/test/other/codesize/test_codesize_cxx_ctors2.jssize b/test/other/codesize/test_codesize_cxx_ctors2.jssize index b04d9afec53aa..b1a957393459b 100644 --- a/test/other/codesize/test_codesize_cxx_ctors2.jssize +++ b/test/other/codesize/test_codesize_cxx_ctors2.jssize @@ -1 +1 @@ -20253 +20235 diff --git a/test/other/codesize/test_codesize_cxx_except.gzsize b/test/other/codesize/test_codesize_cxx_except.gzsize index 5903dd205f192..6ba3ca7f455af 100644 --- a/test/other/codesize/test_codesize_cxx_except.gzsize +++ b/test/other/codesize/test_codesize_cxx_except.gzsize @@ -1 +1 @@ -9352 +9351 diff --git a/test/other/codesize/test_codesize_cxx_except.jssize b/test/other/codesize/test_codesize_cxx_except.jssize index 598c99edeac3b..527b910a1185d 100644 --- a/test/other/codesize/test_codesize_cxx_except.jssize +++ b/test/other/codesize/test_codesize_cxx_except.jssize @@ -1 +1 @@ -24053 +24035 diff --git a/test/other/codesize/test_codesize_cxx_except_wasm.gzsize b/test/other/codesize/test_codesize_cxx_except_wasm.gzsize index e11d08c1e9fc0..6a8b03d0c606f 100644 --- a/test/other/codesize/test_codesize_cxx_except_wasm.gzsize +++ b/test/other/codesize/test_codesize_cxx_except_wasm.gzsize @@ -1 +1 @@ -8298 +8296 diff --git a/test/other/codesize/test_codesize_cxx_except_wasm.jssize b/test/other/codesize/test_codesize_cxx_except_wasm.jssize index b248ea0a9d966..eed7df1e1760b 100644 --- a/test/other/codesize/test_codesize_cxx_except_wasm.jssize +++ b/test/other/codesize/test_codesize_cxx_except_wasm.jssize @@ -1 +1 @@ -20178 +20160 diff --git a/test/other/codesize/test_codesize_cxx_except_wasm_legacy.gzsize b/test/other/codesize/test_codesize_cxx_except_wasm_legacy.gzsize index e11d08c1e9fc0..6a8b03d0c606f 100644 --- a/test/other/codesize/test_codesize_cxx_except_wasm_legacy.gzsize +++ b/test/other/codesize/test_codesize_cxx_except_wasm_legacy.gzsize @@ -1 +1 @@ -8298 +8296 diff --git a/test/other/codesize/test_codesize_cxx_except_wasm_legacy.jssize b/test/other/codesize/test_codesize_cxx_except_wasm_legacy.jssize index b248ea0a9d966..eed7df1e1760b 100644 --- a/test/other/codesize/test_codesize_cxx_except_wasm_legacy.jssize +++ b/test/other/codesize/test_codesize_cxx_except_wasm_legacy.jssize @@ -1 +1 @@ -20178 +20160 diff --git a/test/other/codesize/test_codesize_cxx_lto.gzsize b/test/other/codesize/test_codesize_cxx_lto.gzsize index 1c35f29ce93d9..098f94b2c1797 100644 --- a/test/other/codesize/test_codesize_cxx_lto.gzsize +++ b/test/other/codesize/test_codesize_cxx_lto.gzsize @@ -1 +1 @@ -8365 +8361 diff --git a/test/other/codesize/test_codesize_cxx_lto.jssize b/test/other/codesize/test_codesize_cxx_lto.jssize index 09c97954b6fd7..9932745b117c8 100644 --- a/test/other/codesize/test_codesize_cxx_lto.jssize +++ b/test/other/codesize/test_codesize_cxx_lto.jssize @@ -1 +1 @@ -20360 +20342 diff --git a/test/other/codesize/test_codesize_cxx_mangle.gzsize b/test/other/codesize/test_codesize_cxx_mangle.gzsize index 886a28e6c91b7..0888a57fbd1bb 100644 --- a/test/other/codesize/test_codesize_cxx_mangle.gzsize +++ b/test/other/codesize/test_codesize_cxx_mangle.gzsize @@ -1 +1 @@ -9359 +9357 diff --git a/test/other/codesize/test_codesize_cxx_mangle.jssize b/test/other/codesize/test_codesize_cxx_mangle.jssize index 598c99edeac3b..527b910a1185d 100644 --- a/test/other/codesize/test_codesize_cxx_mangle.jssize +++ b/test/other/codesize/test_codesize_cxx_mangle.jssize @@ -1 +1 @@ -24053 +24035 diff --git a/test/other/codesize/test_codesize_cxx_noexcept.gzsize b/test/other/codesize/test_codesize_cxx_noexcept.gzsize index c85ebbc5b60b2..d7bec804220ec 100644 --- a/test/other/codesize/test_codesize_cxx_noexcept.gzsize +++ b/test/other/codesize/test_codesize_cxx_noexcept.gzsize @@ -1 +1 @@ -8353 +8350 diff --git a/test/other/codesize/test_codesize_cxx_noexcept.jssize b/test/other/codesize/test_codesize_cxx_noexcept.jssize index 41b5f47b2a7c8..21ce7fe7a474d 100644 --- a/test/other/codesize/test_codesize_cxx_noexcept.jssize +++ b/test/other/codesize/test_codesize_cxx_noexcept.jssize @@ -1 +1 @@ -20285 +20267 diff --git a/test/other/codesize/test_codesize_files_js_fs.gzsize b/test/other/codesize/test_codesize_files_js_fs.gzsize index 4a04acfbecfc9..c02621465977d 100644 --- a/test/other/codesize/test_codesize_files_js_fs.gzsize +++ b/test/other/codesize/test_codesize_files_js_fs.gzsize @@ -1 +1 @@ -7661 +7657 diff --git a/test/other/codesize/test_codesize_files_js_fs.jssize b/test/other/codesize/test_codesize_files_js_fs.jssize index 585785fd7cc68..550d0d2937cd9 100644 --- a/test/other/codesize/test_codesize_files_js_fs.jssize +++ b/test/other/codesize/test_codesize_files_js_fs.jssize @@ -1 +1 @@ -18831 +18813