@bobfrankston/msger 0.1.427 → 0.1.429
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/msger-native/bin/msgernative.exe +0 -0
- package/package.json +1 -1
- package/shower.js +9 -2
|
Binary file
|
package/package.json
CHANGED
package/shower.js
CHANGED
|
@@ -788,12 +788,19 @@ export function showMessageBoxEx(options) {
|
|
|
788
788
|
// Register in activeDialogs with auto-cleanup
|
|
789
789
|
if (handle.pid !== undefined) {
|
|
790
790
|
activeDialogs.set(handle.pid, handle);
|
|
791
|
-
// Auto-cleanup when result resolves
|
|
791
|
+
// Auto-cleanup when result resolves. The trailing catch is load
|
|
792
|
+
// bearing: `.finally()` returns a NEW promise that adopts the
|
|
793
|
+
// rejection, and nobody awaits that one — so a window whose native
|
|
794
|
+
// process exited nonzero produced an UNHANDLED REJECTION in the host
|
|
795
|
+
// even though the caller had its own .catch on handle.result (seen in
|
|
796
|
+
// rmfmail 2026-08-23: "msger exited with code 3489660927" logged by
|
|
797
|
+
// the caller AND again as UNHANDLED REJECTION). The caller owns the
|
|
798
|
+
// error; this branch only does bookkeeping. (Claude Code 2026-08-23)
|
|
792
799
|
handle.result.finally(() => {
|
|
793
800
|
if (handle.pid !== undefined) {
|
|
794
801
|
activeDialogs.delete(handle.pid);
|
|
795
802
|
}
|
|
796
|
-
});
|
|
803
|
+
}).catch(() => { });
|
|
797
804
|
}
|
|
798
805
|
return handle;
|
|
799
806
|
}
|