_NET_ACTIVE_WINDOW timestamp of 0

Talk about code development, features, specific bugs, enhancements, patches, and similar things.
Forum rules
Please keep everything here strictly on-topic.
This board is meant for Pale Moon source code development related subjects only like code snippets, patches, specific bugs, git, the repositories, etc.

This is not for tech support! Please do not post tech support questions in the "Development" board!
Please make sure not to use this board for support questions. Please post issues with specific websites, extensions, etc. in the relevant boards for those topics.

Please keep things on-topic as this forum will be used for reference for Pale Moon development. Expect topics that aren't relevant as such to be moved or deleted.
markfilipak

_NET_ACTIVE_WINDOW timestamp of 0

Unread post by markfilipak » 2019-09-23, 06:53

You might want to see this: https://forums.linuxmint.com/viewtopic.php?f=208&t=302216&p=1690223.

Linux Mint implicates Pale Moon (i.e., "Buggy client").

Code: Select all

(metacity:1683): metacity-WARNING **: 04:18:20.260: Buggy client sent a _NET_ACTIVE_WINDOW message with a timestamp of 0 for 0x5000178 (Pale Moon)
(metacity:1683): metacity-WARNING **: 04:18:20.260: meta_window_activate called by a pager with a 0 timestamp; the pager needs to be fixed.
I don't know whether the desktop manager (Cinnamon) crashes were caused by Pale Moon 28.7.1, alone, or the combination of Pale Moon 28.7.1 running in Linux Mint 19.2 (Guest) running in VBox 6.0.12 with the newish VBox VMSVGA display driver, running in Win10-1803 (Host) -- there are just too many moving parts for me to verify anything.

Possibly related: With that combination, I've also experienced occasional network disconnects that seem to be correlated with Pale Moon sessions. Reconnections are immediate, but any situation that disturbs the network connection is bad.

The Linux Mint Forum posting (link, above) includes links to crash dumps.

Kindly let me know of any mitigation, or if you require any further information.

Regards,
Mark Filipak.

PS: If Linux Mint is running with display software emulation (i.e., without VBox's VMSVGA driver), there are no crashes.

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 35602
Joined: 2011-08-28, 17:27
Location: Motala, SE
Contact:

Re: _NET_ACTIVE_WINDOW timestamp of 0

Unread post by Moonchild » 2019-09-23, 11:11

Too many moving parts indeed.
  1. These warnings are known in the metacity WM specifically. This has been known since 2008 by Mozilla. See bug #449723.
  2. Timestamps of 0 are against the spec but should be ignored (just don't raise the window or don't call attention to it).
  3. We already have a safeguard in the one place this is used so it can't be called with a 0 timestamp. It's not clear where this call comes from.
  4. The VMSVGA driver should not crash with 0 timestamps.
Possible workarounds: Avoid the crashing driver or try a different windowmanager than metacity.
"Sometimes, the best way to get what you want is to be a good person." -- Louis Rossmann
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite

markfilipak

Re: _NET_ACTIVE_WINDOW timestamp of 0

Unread post by markfilipak » 2019-09-24, 17:33

Hi MC,

I had to hide sessionstore in order to run PM. I had 7 windows in sessionstore but that caused Cinnamon (the Linux Mint disktop manager) to crash while PM was populating the windows. Interestingly, Cinnamon queried whether I wanted to restart Cinnamon and, if I didn't answer the query but instead simply left the dialog open, PM finished populating the windows (though it wa very slow).

I'm here (at this forum) with only 1 window open (this window).

I ran PM from terminal in order to get post mortim info. I hope this helps.
Regards,
Mark.

Contents:
[[[1]]] Cinnamon crash in Pale Moon (...appears to blame adblocklatitude) ...followed by
[[[2]]] Cinnamon crash in Pale Moon safe mode

[[[1]]]

Code: Select all

mark@mark-VirtualBox:~$ "/media/mark/Palemoon Linux/palemoon" --profile "/media/mark/Palemoon Linux/1oyhyp4u.default"
*************************
A coding exception was thrown in a Promise resolution callback.
See https://developer.mozilla.org/Mozilla/JavaScript_code_modules/Promise.jsm/Promise

Full message: TypeError: INIParser is not a constructor
Full stack: loadFromDisk/readFile<@resource://gre/modules/addons/XPIProvider.jsm -> jar:file:///media/mark/Palemoon%20Linux/1oyhyp4u.default/extensions/adblocklatitude@addons.palemoon.org.xpi!/bootstrap.js -> jar:file:///media/mark/Palemoon%20Linux/1oyhyp4u.default/extensions/adblocklatitude@addons.palemoon.org.xpi!/lib/filterStorage.js:357:20
loadFromDisk/callback<@resource://gre/modules/addons/XPIProvider.jsm -> jar:file:///media/mark/Palemoon%20Linux/1oyhyp4u.default/extensions/adblocklatitude@addons.palemoon.org.xpi!/bootstrap.js -> jar:file:///media/mark/Palemoon%20Linux/1oyhyp4u.default/extensions/adblocklatitude@addons.palemoon.org.xpi!/lib/filterStorage.js:451:11
onSuccess@resource://gre/modules/addons/XPIProvider.jsm -> jar:file:///media/mark/Palemoon%20Linux/1oyhyp4u.default/extensions/adblocklatitude@addons.palemoon.org.xpi!/bootstrap.js -> jar:file:///media/mark/Palemoon%20Linux/1oyhyp4u.default/extensions/adblocklatitude@addons.palemoon.org.xpi!/lib/io.js:300:9
process@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:932:23
walkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:813:7
scheduleWalkerLoop/<@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:747:11

*************************
mark@mark-VirtualBox:~$ 
[[[2]]]

Code: Select all

mark@mark-VirtualBox:/media/mark/Palemoon Linux$ ./palemoon --safe-mode --profile ./1oyhyp4u.default
1569286174038	addons.xpi-utils	WARN	Error: XPI database modified after shutdown began (resource://gre/modules/addons/XPIProvider.jsm -> resource://gre/modules/addons/XPIProviderUtils.js:432:17) JS Stack trace: saveChanges@XPIProviderUtils.js:432:17 < XPIDB_removeAddonMetadata@XPIProviderUtils.js:1283:5 < XPI_uninstallAddon@XPIProvider.jsm:4739:7 < AddonWrapper_uninstall@XPIProvider.jsm:7077:5 < doPendingUninstalls@extensions.js:1620:5 < gListView_hide@extensions.js:2600:5 < gVC_shutdown@extensions.js:603:7 < shutdown@extensions.js:180:3
1569286174318	addons.xpi-utils	WARN	Error: XPI database modified after shutdown began (resource://gre/modules/addons/XPIProvider.jsm -> resource://gre/modules/addons/XPIProviderUtils.js:432:17) JS Stack trace: saveChanges@XPIProviderUtils.js:432:17 < XPIDB_removeAddonMetadata@XPIProviderUtils.js:1283:5 < XPI_uninstallAddon@XPIProvider.jsm:4739:7 < AddonWrapper_uninstall@XPIProvider.jsm:7077:5 < doPendingUninstalls@extensions.js:1620:5 < gListView_hide@extensions.js:2600:5 < gVC_shutdown@extensions.js:603:7 < shutdown@extensions.js:180:3

markfilipak

Re: _NET_ACTIVE_WINDOW timestamp of 0

Unread post by markfilipak » 2019-09-24, 18:21

MC, there's something else that might help.

For several years, I found that when I closed PM, if I closed via 'File' 'Quit' in any window other than the 1st window that had been populated on launch, on the next PM launch I sometimes got a dialog saying the PM was having a problem restoring the previous session and asking me to pick the windows to restore. My workaround was to always 'Quit' PM from the !st window.

Now, I know that much of Cinnamon is JS-driven, and I've had some experience writing multi-threaded JS (prior to JS version 2) & real-time kernels, and it occurs to me that event collisions may be occuring.

markfilipak

Re: _NET_ACTIVE_WINDOW timestamp of 0

Unread post by markfilipak » 2019-09-25, 04:43

I thought I'd give you an update.

I had been receiving occasional reconnection notices in Linux Mint. Turns out that my cable gateway was wonky -- the lease time was malfunctioning ...but no matter to you...

What's important to you is that, if PM has one window open, all is Joy. If PM has 7 windows open, the Cinnamon desktop crashes while PM is loading the windows. I just tested it.

Do you want me to test further with various number of windows?

Locked