mate-desktop / mate-settings-daemon

MATE settings daemon
https://mate-desktop.org
GNU General Public License v2.0
44 stars 46 forks source link

Crash when logout #414

Open Aminavy opened 3 months ago

Aminavy commented 3 months ago

When i logout or shutdown the system mate-settings-daemon crashes and make core file.

Steps to reproduce the behaviour

Try to logout or any way to exit from desktop

MATE general version

1.26.0

Package version

1.26.0_4

Operating System

FreeBSD 14.0-RELEASE

Link to bugreport of your Distribution (requirement)

https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=275703

core-file: mate-settings-daemo.core.zip

cwendling commented 3 months ago

A core file is nice, but it's a bit hard to use when not having the exact same build, and I don't think any of us do have a FreeBSD setup.

So, could you give a full backtrace, made with debugging symbols for mate-settings-daemon, GLib, GObject and GTK?

Also I guess you're not actually using mate-settings-daemon 1.20.9, are you?? This is ancient, and I'd be even surprised it'd work with 1.26 components.

Finally, could yo by any chance test a Git version (or at least 1.28)? The issue might have already been fixed since 1.26 isn't exactly new :)

Aminavy commented 3 months ago

Sorry! I edited the first post: mate-settings-daemon: 1.26.0

I'll build them with debug symbols...

cwendling commented 3 months ago

I'll build them with debug symbols...

Hum… what puzzles me is that the backtrace you show in the FreeBSD report doesn't have much of any information at all, just 2 unnamed frames. Do you get more info if you stop the process and tracktrace at this point? It might just be that at this point SIGBUS put the process in a weird state, but it's hard to take anything form it…

Aminavy commented 3 months ago

debug_output.txt

sorry! glib and gtk has lots of build depends! now i haven't enough time to build them

cwendling commented 3 months ago

No worries, it's likely fine for GTK and GLib if we have function names. However, in your last debug output, it mentions SIGQUIT… and sure, but that's no reason to generate a core, is it? Anyway, it doesn't look like a crash. Can you reproduce the crash with the same debugging info?

Aminavy commented 3 months ago

I think that core generated when i send SIGQUIT with kill to mate-settings-daemon. (it seems closing the mate-settings-daemon will generate a core by logout or signal etc.).

Can you reproduce the crash with the same debugging info?

yes. with logout and sending signal manually

Edit: the backtrace when logout

backtrace_output_when_logout.txt

cwendling commented 3 months ago

Ah! The one at logout clearly shows an actual crash, whereas the other one showed merely a process stopping because of a signal it didn't handle.

The logout backtrace suggests there's an issue in the mpris plugin, probably leading to a NULL (or invalid) pointer passed to strcmp() down the line. That should help pinpointing the issue.