Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 893400 - www-client/seamonkey-2.53.15: Certain sites crash
Summary: www-client/seamonkey-2.53.15: Certain sites crash
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Myckel Habets
URL: http://commercebank.com
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-02-06 14:48 UTC by Joseph
Modified: 2023-11-20 10:34 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
emerge --info (emerge-info.xz,3.47 KB, application/x-xz)
2023-02-06 14:51 UTC, Joseph
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Joseph 2023-02-06 14:48:46 UTC
Certain websites crash seamonkey repeatably.

Reproducible: Always

Steps to Reproduce:
1.Go to commercebank.com
2.Click on "Log in" (top right of page) 
3.Enter some bogus login information
4.Receive crash
Actual Results:  
Crash

Expected Results:  
Go to next page in login flow.

Logs from the console:
$ seamonkey
[calBackendLoader] Using Thunderbird's builtin libical backend
JavaScript error: resource://devtools/client/framework/gDevTools.jsm, line 150: TypeError: browser[name] is undefined
JavaScript error: resource://devtools/client/framework/browser-menus.js, line 223: TypeError: menu is null
JavaScript error: jar:file:///usr/lib64/seamonkey/omni.ja!/components/devtools-startup.js, line 300: NS_ERROR_FILE_NOT_FOUND: 
Document https://www.seamonkey-project.org/start/ loaded successfully
JavaScript error: https://9895713.fls.doubleclick.net/activityi;src=9895713;type=comme0;cat=comme0;ord=3338564893759;gtm=45He3210;auiddc=1199788891.1675694413;~oref=https%3A%2F%2Fwww.commercebank.com%2F?, line 14: ReferenceError: cntrUpTag is not defined
JavaScript error: https://9895713.fls.doubleclick.net/activityi;src=9895713;type=consu0;cat=consu0;ord=9734935038898;gtm=45He3210;auiddc=1199788891.1675694413;~oref=https%3A%2F%2Fwww.commercebank.com%2F?, line 14: ReferenceError: cntrUpTag is not defined
JavaScript error: https://9895713.fls.doubleclick.net/activityi;src=9895713;type=consu0;cat=consu0;ord=1167595613971;gtm=45He3210;auiddc=1199788891.1675694413;~oref=https%3A%2F%2Fwww.commercebank.com%2F?, line 14: ReferenceError: cntrUpTag is not defined
JavaScript error: https://9895713.fls.doubleclick.net/activityi;src=9895713;type=comme0;cat=comme0;ord=6791601551101;gtm=45He3210;auiddc=1199788891.1675694413;~oref=https%3A%2F%2Fwww.commercebank.com%2F?, line 14: ReferenceError: cntrUpTag is not defined
JavaScript error: https://9895713.fls.doubleclick.net/activityi;src=9895713;type=consu0;cat=consu0;ord=8563979325025;gtm=45He3210;auiddc=1199788891.1675694413;~oref=https%3A%2F%2Fwww.commercebank.com%2F?, line 14: ReferenceError: cntrUpTag is not defined
JavaScript error: https://9895713.fls.doubleclick.net/activityi;src=9895713;type=comme0;cat=comme0;ord=1650139651528;gtm=45He3210;auiddc=1199788891.1675694413;~oref=https%3A%2F%2Fwww.commercebank.com%2F?, line 14: ReferenceError: cntrUpTag is not defined
Document https://www.commercebank.com/ loaded successfully
1675694676102	addons.repository	WARN	Search failed when repopulating cache
1675694676324	addons.update-checker	WARN	Update manifest for {e2fda1a4-762b-4020-b5ad-a41df1933103} did not contain an updates property
1675694676351	addons.update-checker	WARN	Update manifest for {972ce4c6-7e08-4474-a285-3208198ce6fd} did not contain an updates property
1675694676405	addons.update-checker	WARN	Update manifest for modern@themes.mozilla.org did not contain an updates property
console.warn: LoginRecipes: getRecipes: falling back to a synchronous message for: https://www.commercebank.com
JavaScript warning: https://banking.commercebank.com/_Incapsula_Resource?SWJIYLWA=8d6f1aa33a665c8f2b39aa47230ae91d,719d34d31c8e3a6e6fffd425f7e032f3&ns=2&cb=1908892834, line 1: unreachable code after return statement
JavaScript warning: https://banking.commercebank.com/_Incapsula_Resource?SWJIYLWA=8d6f1aa33a665c8f2b39aa47230ae91d,719d34d31c8e3a6e6fffd425f7e032f3&ns=2&cb=1908892834, line 1: unreachable code after return statement
JavaScript warning: https://banking.commercebank.com/_Incapsula_Resource?SWJIYLWA=8d6f1aa33a665c8f2b39aa47230ae91d,719d34d31c8e3a6e6fffd425f7e032f3&ns=2&cb=1908892834, line 1: unreachable code after return statement
JavaScript warning: https://banking.commercebank.com/_Incapsula_Resource?SWJIYLWA=8d6f1aa33a665c8f2b39aa47230ae91d,719d34d31c8e3a6e6fffd425f7e032f3&ns=2&cb=1908892834 line 1 > eval, line 1: unreachable code after return statement
JavaScript warning: https://banking.commercebank.com/_Incapsula_Resource?SWJIYLWA=8d6f1aa33a665c8f2b39aa47230ae91d,719d34d31c8e3a6e6fffd425f7e032f3&ns=2&cb=1908892834 line 1 > eval, line 1: unreachable code after return statement
Speicherzugriffsfehler
Comment 1 Joseph 2023-02-06 14:51:39 UTC
Created attachment 849994 [details]
emerge --info
Comment 2 Joseph 2023-02-06 14:52:20 UTC
emerge -pv seamonkey

[ebuild   R    ] www-client/seamonkey-2.53.15::gentoo  USE="dbus gmp-autoupdate ipc pulseaudio startup-notification system-av1 system-harfbuzz system-icu system-jpeg system-libevent system-libvpx system-png system-sqlite wifi -chatzilla -custom-cflags -custom-optimization -jack (-lto) (-selinux) -test -webrtc" L10N="de -cs -en-GB -es-AR -es-ES -fr -hu -it -ja -lt -nl -pl -pt-PT -ru -sk -sv -zh-CN -zh-TW" 0 KiB
Comment 3 Jonas Stein gentoo-dev 2023-02-06 19:47:33 UTC
Please use LANG=C for bug reports.
Looks to me rather like an upstream bug than a bug in the ebuild. 
It should be reported upstream.
Comment 4 Myckel Habets 2023-02-07 08:47:34 UTC
I've asked upstream if this is a known site to crash.

Did you experience the same with 2.53.14? Or is this a regression in 2.53.15?
Comment 5 Joseph 2023-02-07 14:42:43 UTC
The previous stable version was fine.
Comment 6 Joseph 2023-02-07 14:45:29 UTC
Also, the binary from the seamonkey site works fine. seamonkey-2.53.15.en-US.linux-x86_64.tar.bz2
Comment 7 Joseph 2023-02-07 14:56:08 UTC
My guess is there's an issue when the system libs are used, so I've disabled all the system-* flags and will try again.
Comment 8 Joseph 2023-02-07 20:08:39 UTC
Nope, that didn't do it.

[ebuild   R    ] www-client/seamonkey-2.53.15::gentoo  USE="dbus gmp-autoupdate ipc pulseaudio startup-notification wifi -chatzilla -custom-cflags -custom-optimization -jack (-lto) (-selinux) -system-av1* -system-harfbuzz* -system-icu* -system-jpeg* -system-libevent* -system-libvpx* -system-png* -system-sqlite* -test -webrtc" L10N="de -cs -en-GB -es-AR -es-ES -fr -hu -it -ja -lt -nl -pl -pt-PT -ru -sk -sv -zh-CN -zh-TW" 0 KiB
Comment 9 Joseph 2023-02-07 20:59:15 UTC
With the following change, it no longer crashes:

[ebuild   R    ] www-client/seamonkey-2.53.15::gentoo  USE="-chatzilla -custom-cflags -custom-optimization -dbus* -gmp-autoupdate* -ipc* -jack (-lto) -pulseaudio* (-selinux) -startup-notification* -system-av1 -system-harfbuzz -system-icu -system-jpeg -system-libevent -system-libvpx -system-png -system-sqlite -test -webrtc -wifi*" L10N="de -cs -en-GB -es-AR -es-ES -fr -hu -it -ja -lt -nl -pl -pt-PT -ru -sk -sv -zh-CN -zh-TW" 0 KiB


Guess the next thing to try is re-enabling flags and seeing which causes the crash.
Comment 10 Myckel Habets 2023-02-08 09:59:23 UTC
For some reason the site in question doesn't load here at all (server doesn't seem to respond, network-timeout).

One thing that you could try, according to upstream, is to use a clean profile. But it seems this is some USE-flag related thing. Could be that upstream has that feature disabled in their builds. If you could pinpoint it to a specific USE flag, that would help.
Comment 11 Joseph 2023-02-09 03:15:01 UTC
Because this version said it was not backwards compatible, and because it doesn't have anything I especially care about, I already started with a clean profile.

I'll keep trying USE flags to figure it out.
Comment 12 Joseph 2023-02-09 20:30:56 UTC
pulseaudio is the culprit. I don't know why, but I noticed that the Commerce page started some audio stream once I started the login flow. Seamonkey used to hang afterwards (I'd have to kill it, or it'd refuse to start because it was "already running"). Now it just crashes.
Comment 13 Joseph 2023-02-09 20:31:08 UTC
I'm using pipewire, which is likely related.
Comment 14 Joseph 2023-02-10 00:19:24 UTC
Final test config (after emerging)

$ emerge -pv seamonkey

These are the packages that would be merged, in order:

Calculating dependencies... done!
Dependency resolution took 3.61 s.

[ebuild   R    ] www-client/seamonkey-2.53.15::gentoo  USE="dbus gmp-autoupdate ipc startup-notification system-av1 system-harfbuzz system-icu system-jpeg system-libevent system-libvpx system-png system-sqlite -chatzilla -custom-cflags -custom-optimization -jack (-lto) -pulseaudio (-selinux) -test -webrtc -wifi" L10N="de -cs -en-GB -es-AR -es-ES -fr -hu -it -ja -lt -nl -pl -pt-PT -ru -sk -sv -zh-CN -zh-TW" 0 KiB


I also disabled wifi because why not
Comment 15 Myckel Habets 2023-02-10 09:12:00 UTC
Hmm.. I never use PulseAudio or pipewire, just direct ALSA.

Anyway, good to know where to search for the problem. I'll have a chat with upstream, see what can be done about this or what might be the cause.

If it hanged before... how did you use that site then?
Comment 16 Joseph 2023-02-10 13:44:10 UTC
It didn't hang the site, just that:

1. Seamonkey would show up in the audio list
2. Seamonkey would still be running after I exited.

It was usable during the session. I just had to kill Seamonkey with e.g. pkill before I could start it again.
Comment 17 Pierre Willenbrock 2023-02-10 15:31:00 UTC
I had a similar crash related to pulse-audio, and found it to be working with rust-1.66.* with seamonkey-2.53.15, but not with rust-1.67 and seamonkey-2.53.15 or seamonkey-2.53.14. There seems to be a mismatch between a c-struct and a rust-struct, where the rust side seems to write a member but the c-side does not see it. Also, i don't know if the relevant code is compiled when only rust-1.66 is available.
Comment 18 Joseph 2023-02-10 17:53:16 UTC
rustc version:

$ rustc --version
rustc 1.67.1 (d5a82bbd2 2023-02-07) (gentoo)
Comment 19 Myckel Habets 2023-02-12 12:01:32 UTC
(In reply to Pierre Willenbrock from comment #17)
> I had a similar crash related to pulse-audio, and found it to be working
> with rust-1.66.* with seamonkey-2.53.15, but not with rust-1.67 and
> seamonkey-2.53.15 or seamonkey-2.53.14. There seems to be a mismatch between
> a c-struct and a rust-struct, where the rust side seems to write a member
> but the c-side does not see it. Also, i don't know if the relevant code is
> compiled when only rust-1.66 is available.

Hmm.. that could be something to further investigate.

seamonkey-1.53.15 has only verified compatibility with rust 1.65 according to upstream. Many of the rust 3rd-party packages that seamonkey uses are old (I'm helping upstream to get them updated to newer versions) and the speed in which rust pushes out new versions doesn't surprise me that things would break here.

@Joseph, is there a way for you to downgrade to rust-1.66, rebuild seamonkey and test with that again?
Comment 20 Joseph 2023-02-15 22:05:40 UTC
If you can tell me how to do it, I'll do it. I can emerge a specific version of rust, but I can't see how to emerge seamonkey with it.
Comment 21 Myckel Habets 2023-02-16 08:55:56 UTC
(In reply to Joseph from comment #20)
> If you can tell me how to do it, I'll do it. I can emerge a specific version
> of rust, but I can't see how to emerge seamonkey with it.

Yeah, I looked already into that, but if you have more things using rust (most likely) downgrading is not doable (well, it might be doable, but I'm not sure if that's worthwhile). Rusts way of development seems to be that you never downgrade.

Upstream said the Fedora package maintainer also had it crashing on sound playback with the same rust version as you. He just disabled pulseaudio for now, but that's not a long term solution.

The pulseaudio part of seamonkey is a bit outdated and my guess is that bumping that code to somewhat newer might fix it. This is what I'm trying to do now, but is going to take some time.

My best take is to keep the pulseaudio USE flag disabled for now.
Comment 22 Joseph 2023-02-16 14:58:58 UTC
That being the case, probably best to disable the flag, at least if rustc is of the wrong version.
Comment 23 Jan Seiffert 2023-06-17 14:29:45 UTC
Had a running seamonkey-2.53.15-r1 with system changed to pipewire till yesterday.
Run a bunch of updates overnight, which rebuild seamonkey.
Today seamonkey SIGSEGV on youtube on videoplayback start, right in the audio-init.
Now rebuilding without pulseaudio useflag.

[Switching to Thread 0x7ffee81b46c0 (LWP 4705)]
0x00007ffff3a085e7 in cubeb_init () from /usr/lib64/seamonkey/libxul.so
(gdb) bt
#0  0x00007ffff3a085e7 in cubeb_init () at /usr/lib64/seamonkey/libxul.so
#1  0x00007ffff2d96caa in mozilla::CubebUtils::GetCubebContextUnlocked() [clone .part.0] () at /usr/lib64/seamonkey/libxul.so
#2  0x00007ffff2d9781a in mozilla::CubebUtils::GetCubebContext() () at /usr/lib64/seamonkey/libxul.so
#3  0x00007ffff2dabf4f in mozilla::AudioStream::Init(unsigned int, unsigned int, unsigned int) () at /usr/lib64/seamonkey/libxul.so
#4  0x00007ffff2f3454b in mozilla::media::AudioSink::InitializeAudioStream(mozilla::media::MediaSink::PlaybackParams const&) ()
    at /usr/lib64/seamonkey/libxul.so
#5  0x00007ffff2f348ab in mozilla::media::AudioSink::Init(mozilla::media::MediaSink::PlaybackParams const&) () at /usr/lib64/seamonkey/libxul.so
#6  0x00007ffff2f3529a in mozilla::media::AudioSinkWrapper::Start(mozilla::media::TimeUnit const&, mozilla::MediaInfo const&) ()
    at /usr/lib64/seamonkey/libxul.so
#7  0x00007ffff2f33ad3 in mozilla::media::VideoSink::Start(mozilla::media::TimeUnit const&, mozilla::MediaInfo const&) ()
    at /usr/lib64/seamonkey/libxul.so
#8  0x00007ffff2e0aefd in mozilla::MediaDecoderStateMachine::StartMediaSink() [clone .part.0] () at /usr/lib64/seamonkey/libxul.so
#9  0x00007ffff2e2ece7 in mozilla::MediaDecoderStateMachine::MaybeStartPlayback() [clone .part.0] () at /usr/lib64/seamonkey/libxul.so
#10 0x00007ffff2e30029 in mozilla::MediaDecoderStateMachine::DecodingState::Step() () at /usr/lib64/seamonkey/libxul.so
#11 0x00007ffff2dea917 in mozilla::detail::RunnableMethodImpl<mozilla::MediaDecoderStateMachine*, void (mozilla::MediaDecoderStateMachine::*)(), true, (mozilla::RunnableKind)0>::Run() () at /usr/lib64/seamonkey/libxul.so
#12 0x00007ffff17c224d in mozilla::AutoTaskDispatcher::TaskGroupRunnable::Run() () at /usr/lib64/seamonkey/libxul.so
#13 0x00007ffff17c7e45 in mozilla::TaskQueue::Runner::Run() () at /usr/lib64/seamonkey/libxul.so
#14 0x00007ffff17cfef5 in nsThreadPool::Run() () at /usr/lib64/seamonkey/libxul.so
#15 0x00007ffff17d5922 in nsThread::ProcessNextEvent(bool, bool*) () at /usr/lib64/seamonkey/libxul.so
#16 0x00007ffff17d3b4a in NS_ProcessNextEvent(nsIThread*, bool) () at /usr/lib64/seamonkey/libxul.so
#17 0x00007ffff1a7a19a in mozilla::ipc::MessagePumpForNonMainThreads::Run(base::MessagePump::Delegate*) () at /usr/lib64/seamonkey/libxul.so
#18 0x00007ffff1a5791b in MessageLoop::Run() () at /usr/lib64/seamonkey/libxul.so
#19 0x00007ffff17d4228 in nsThread::ThreadFunc(void*) () at /usr/lib64/seamonkey/libxul.so
#20 0x00007ffff7a12ac0 in _pt_root () at /usr/lib64/libnspr4.so
#21 0x00007ffff7aafae3 in start_thread () at /lib64/libc.so.6
#22 0x00007ffff7b31b9c in clone3 () at /lib64/libc.so.6
Comment 24 Myckel Habets 2023-06-23 08:19:48 UTC
(In reply to Jan Seiffert from comment #23)
> Now rebuilding without pulseaudio useflag.

Did that work?

This issue should be resolved in the upcoming release (2.53.17). Seamonkey recently released the beta for this, so lets hope this doesn't take too long for the final release.
Comment 25 Jan Seiffert 2023-07-15 15:09:17 UTC
(In reply to Myckel Habets from comment #24)
> (In reply to Jan Seiffert from comment #23)
> > Now rebuilding without pulseaudio useflag.
> 
> Did that work?
> 

affirmative
Rebuilding without pulseaudio useflag solved it.


> This issue should be resolved in the upcoming release (2.53.17). Seamonkey
> recently released the beta for this, so lets hope this doesn't take too long
> for the final release.

I hope so.
Having it AFAP in the tree, even behind hard mask or something would be great.
Comment 26 callmewhatyoulike 2023-07-21 19:29:51 UTC
Also looking forward to the 2.53.17 build. 
I can kind of confirm the problem. (differnt websites, though)
I thought it was my fault since I accidentally built seamonkey with custom-cflags; though those aren't overly special. 
Since that build I received segfaults whenever I restored my session and JavaScript was enabled. I found so far that when video would start (e.g. youtube) then things would crash. It might be related to this audio here, too. (pipewire on this one, haven't checked my other boxes yet). 
(seamonkey was built with "pulseaudio" enabled (not all have an official pipewire support yet), back in the past sometimes an audio stream would block all other sources from playing with pure ALSA)

Currently I swith off JavaScript via the old (but nice) prefbar addon and only enable it once I think it is needed. Saved me from a lot of crashes so far.
Comment 27 Myckel Habets 2023-08-12 13:41:37 UTC
The ebuild for Seamonkey 2.53.17 hit the portage tree last week. Did this solve the issue for you? (@callmewhatyoulike already reported his crashing issue was solved)
Comment 28 Myckel Habets 2023-11-20 10:34:43 UTC
No reply for some time. I assume the issue has been resolved by the new release. Closing.