https://bugs.kde.org/show_bug.cgi?id=424939
Bug ID: 424939 Summary: The browser integration extension should check the port status before using it. Product: plasma-browser-integration Version: unspecified Platform: Other OS: Other Status: REPORTED Severity: minor Priority: NOR Component: Firefox Assignee: k...@privat.broulik.de Reporter: dietrich.dar...@gmail.com Target Milestone: --- SUMMARY The Firefox integration extension is not checking a port status before using it, which makes journalctl logs very cluttered. STEPS TO REPRODUCE 1. Run firefox with the plasma integration app 2. Check journalctl OBSERVED RESULT Logs are cluttered with, ``` │Aug 02 11:44:57 (hostname) xsession[3458]: JavaScript error: moz-extension://41f4e5f9-376d-4fcf-aa73-f662502f23bc/extension-utils.js, line 0: Error: Attempt to postMessage on disconnected port ``` ISSUE I see that moz-extension://41f4e5f9-376d-4fcf-aa73-f662502f23bc/extension-utils.js calls `port.postMessage` in 2 places, both unchecked, ``` function sendPortMessage(subsystem, event, payload) { // why do we put stuff on root level here but otherwise have a "payload"? :( var message = payload || {} message.subsystem = subsystem; message.event = event; port.postMessage(message); /// ^^^^^^^^^^^ /// line 0: Error: Attempt to postMessage on disconnected port } function sendPortMessageWithReply(subsystem, event, payload) { return new Promise((resolve, reject) => { let message = payload || {}; message.subsystem = subsystem; message.event = event; ++currentMessageSerial; if (currentMessageSerial >= Math.pow(2, 31) - 1) { // INT_MAX currentMessageSerial = 0; } message.serial = currentMessageSerial; port.postMessage(message); /// <------- /// ^^^^^^^^^^^ /// line 0: Error: Attempt to postMessage on disconnected port pendingMessageReplyResolvers[message.serial] = resolve; }); } ``` Also, maybe the port disconnection is itself also a bug, but even if it were not the defensive checks should still be in place. EXPECTED RESULT * No verbose errors are being reported. * The postMessage calls check for the port status prior to using it. SOFTWARE/OS VERSIONS Operating System: NixOS 20.09pre236419.a45f68ccac4 KDE Plasma Version: 5.17.5 KDE Frameworks Version: 5.71.0 Qt Version: 5.12.7 Kernel Version: 5.4.54 -- You are receiving this mail because: You are watching all bug changes.