PM4Linux and oxygen-gtk: a better solution
Moderator: trava90
Forum rules
This board is for technical/general usage questions and troubleshooting for the Pale Moon browser only.
Technical issues and questions not related to the Pale Moon browser should be posted in other boards!
Please keep off-topic and general discussion out of this board, thank you!
This board is for technical/general usage questions and troubleshooting for the Pale Moon browser only.
Technical issues and questions not related to the Pale Moon browser should be posted in other boards!
Please keep off-topic and general discussion out of this board, thank you!
Re: PM4Linux and oxygen-gtk: a better solution
I think another important question to ask would be: what is different in the way Mozilla builds linux browsers compared to how it is done for Pale Moon? Is there a different toolchain used? different compiler? different optimization/configure options that would cause this?
"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
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite
- Antonius32
- Add-ons Team
- Posts: 695
- Joined: 2014-05-25, 11:18
- Location: Netherlands
Re: PM4Linux and oxygen-gtk: a better solution
I think access2godzilla has ruled out that option already:
access2godzilla wrote:And you're right, Firefox ESR, even the ones that I built myself, doesn't crash (That eliminates the possibility that the toolchains were responsible.)
Re: PM4Linux and oxygen-gtk: a better solution
All right, so how about optimization/configure options in use?Antonius32 wrote:I think access2godzilla has ruled out that option already:
"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
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite
Re: PM4Linux and oxygen-gtk: a better solution
I tried making a debugging enabled, non-optimised build and that crashes too. As far as flags are concerned, I did need a --disable-elf-hack for Firefox but not for Pale Moon. Hence I also built a debug enabled, non-optimised build with --disable-elf-hack, but that didn't help.
Re: PM4Linux and oxygen-gtk: a better solution
Definitely a conundrum. I wish I could provide more insight, but there aren't any code changes that I know of that would possibly affect this - mainly because I still don't know what falls over in that specific theme...
"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
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite
Re: PM4Linux and oxygen-gtk: a better solution
My question is, what can I eliminate from the diff? Can I eliminate all js, css, html/xul files from it?Moonchild wrote:but there aren't any code changes that I know of that would possibly affect this
This is, strictly speaking, not our problem: this is just a horribly made theme that mucks about at a dangerously low level with every GTK program. I'm trying to just find out what Pale Moon does differently from Firefox that causes this.Moonchild wrote:I still don't know what falls over in that specific theme...
Re: PM4Linux and oxygen-gtk: a better solution
No, not necessarily. If it is as unstable at a low level as you say it is, then anything can set it off. Browser chrome is drawn in very much the same way as page content. It uses hardware acceleration when available, and as such uses textures and layers with different properties and drawing methods. A simple css effect or size can set it off if it hits a sore spot. Adding or removing a XUL visual element could, too. dynamically changing something with js can also cause errors. Different font rendering, blurring method, etc. all can contribute to the problem - it's like trying to find out what makes a bad video driver fall over, and it's best to simply not try to use it, at all.access2godzilla wrote:My question is, what can I eliminate from the diff? Can I eliminate all js, css, html/xul files from it?
"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
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite
Re: PM4Linux and oxygen-gtk: a better solution
The above was also a request to see what could be eliminated from the diff. I don't think anything in /browser/branding/* or /browser/themes/* could cause crashes
Re: PM4Linux and oxygen-gtk: a better solution
Actually, yes they can if the skinning back-end in the OS is very unstable, just using a different bitmap could already cause it... so themes and branding ARE just as much candidates for triggering a problem.access2godzilla wrote:The above was also a request to see what could be eliminated from the diff. I don't think anything in /browser/branding/* or /browser/themes/* could cause crashes
I can't help but wonder why it's made the default for a number of distros if it is known to cause crashes in many applications?
"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
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite
Re: PM4Linux and oxygen-gtk: a better solution
Not really willing to scan through ~10000 lines to find where the problem is (not even considering the fact that I don't have the time these days). But I think branding and such can be eliminated because branding isn't being rendered when the browser menus are opened. Culling the list gives me this, and I still have to go over ~3000 lines:
Since the crashes occur when any menus are opened, my question would be: was anything changed that would relate to drawing of menus? With a cursory glance I found things that had to do with adding some options to the context menu, but nothing more.
Code: Select all
./browser/base/content/browser-feeds.js
./browser/base/content/aboutDialog.css
./browser/base/content/aboutDialog.xul
./browser/base/content/nsContextMenu.js
./browser/base/content/safeMode.js
./browser/base/content/safeMode.xul
./browser/base/content/browser-fullScreen.js
./browser/base/content/browser-plugins.js
./browser/base/content/browser-sets.inc
./browser/base/content/browser-tabPreviews.js
./browser/base/content/browser-tabPreviews.xml
./browser/base/content/browser.css
./browser/base/content/browser.js
./browser/base/content/browser.xul
./browser/base/content/tabbrowser.xml
./browser/base/content/test/browser_ctrlTab.js
./browser/base/content/test/browser_visibleTabs.js
./browser/base/content/web-panels.xul
./browser/base/content/browser-context.inc
./browser/base/content/browser-doctype.inc
./browser/base/jar.mn
./browser/components/about/AboutRedirector.cpp
./browser/components/build/nsModule.cpp
./browser/components/moz.build
./browser/components/nsBrowserGlue.js
./browser/components/preferences/advanced.xul
./browser/components/preferences/tabs.xul
./browser/components/preferences/content.xul
./browser/components/sessionstore/src/SessionStore.jsm
./browser/components/shell/src/nsWindowsShellService.cpp
./browser/locales/en-US/chrome/browser/aboutSessionRestore.dtd
./browser/locales/en-US/chrome/browser/browser.dtd
./browser/locales/en-US/chrome/browser/browser.properties
./browser/locales/en-US/chrome/browser/safeMode.dtd
./browser/locales/en-US/chrome/overrides/appstrings.properties
./browser/locales/en-US/defines.inc
./browser/locales/en-US/searchplugins/list.txt
./browser/locales/generic/profile/bookmarks.html.in
./browser/locales/jar.mn
./browser/modules/WindowsPreviewPerTab.jsm
./browser/themes/linux/jar.mn
./browser/themes/linux/browser.css
./browser/themes/shared/browser.inc
./modules/libpref/src/init/all.js
./toolkit/components/downloads/nsDownloadManager.h
./toolkit/content/jar.mn
./toolkit/content/resetProfile.js
./toolkit/content/widgets/tabbox.xml
./toolkit/modules/LightweightThemeConsumer.jsm
./toolkit/mozapps/downloads/content/downloads.xul
./toolkit/themes/osx/global/media/TopLevelImageDocument.css
./toolkit/themes/windows/global/media/TopLevelImageDocument.css
./content/html/document/src/ImageDocument.cpp
./content/html/document/src/ImageDocument.h
Re: PM4Linux and oxygen-gtk: a better solution
The actual mechanics for drawing of menus is no different than in Firefox.access2godzilla wrote:Since the crashes occur when any menus are opened, my question would be: was anything changed that would relate to drawing of menus? With a cursory glance I found things that had to do with adding some options to the context menu, but nothing more.
"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
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite
- Antonius32
- Add-ons Team
- Posts: 695
- Joined: 2014-05-25, 11:18
- Location: Netherlands
Re: PM4Linux and oxygen-gtk: a better solution
I'm just curious: any new developments on this matter?