Bug 440327 - Yakuake immediately segfaults after having ticked a transparency option
Summary: Yakuake immediately segfaults after having ticked a transparency option
Status: RESOLVED FIXED
Alias: None
Product: yakuake
Classification: Applications
Component: general (show other bugs)
Version: Git (Frameworks 5)
Platform: Manjaro Linux
: NOR crash
Target Milestone: ---
Assignee: Eike Hein
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-07-27 11:58 UTC by Warbeaver
Modified: 2023-05-19 12:36 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Warbeaver 2021-07-27 11:58:35 UTC
SUMMARY
I checked a transparency option in Yakuake's general options (not the per-profile ones, and I can't remember exactly its name), and the program immediately crashed. Now I can't start it anymore, it segfaults straightaway.

STEPS TO REPRODUCE
1. Launch `yakuake` from the terminal

OBSERVED RESULT
yakuake works like a charm

EXPECTED RESULT
[1]  + XXXXX segmentation fault (core dumped)  yakuake

SOFTWARE/OS VERSIONS
Operating System: Manjaro Linux
KDE Plasma Version: 5.22.3
KDE Frameworks Version: 5.84.0
Qt Version: 5.15.2
Kernel Version: 5.13.4-1-MANJARO (64-bit)
Graphics Platform: X11

ADDITIONAL INFORMATION
I rebuilt yakuake from source with DB symbols following Arch Wiki and obtained a debug log:

Application: Yakuake (yakuake), signal: Segmentation fault

[KCrash Handler]
#4  0x00007f3fc8ed9440 in QScreen::geometry() const () from /usr/lib/libQt5Gui.so.5
#5  0x0000562c93f34dd8 in MainWindow::getScreenGeometry (this=this@entry=0x7fff98cbc820) at /usr/src/debug/yakuake-21.04.3/app/mainwindow.cpp:1513
#6  0x0000562c93f38548 in MainWindow::getDesktopGeometry (this=this@entry=0x7fff98cbc820) at /usr/src/debug/yakuake-21.04.3/app/mainwindow.cpp:1520
#7  0x0000562c93f38a90 in MainWindow::setWindowGeometry (this=this@entry=0x7fff98cbc820, newWidth=80, newHeight=60, newPosition=50) at /usr/src/debug/yakuake-21.04.3/app/mainwindow.cpp:953
#8  0x0000562c93f38dbd in MainWindow::applyWindowGeometry (this=this@entry=0x7fff98cbc820) at /usr/src/debug/yakuake-21.04.3/app/mainwindow.cpp:948
#9  0x0000562c93f390e3 in MainWindow::applySettings (this=this@entry=0x7fff98cbc820) at /usr/src/debug/yakuake-21.04.3/app/mainwindow.cpp:895
#10 0x0000562c93f39832 in MainWindow::MainWindow (this=this@entry=0x7fff98cbc820, parent=parent@entry=0x0) at /usr/src/debug/yakuake-21.04.3/app/mainwindow.cpp:124
#11 0x0000562c93f2c7b5 in main (argc=<optimized out>, argv=0x7fff98cbc7e0) at /usr/src/debug/yakuake-21.04.3/app/main.cpp:68
[Inferior 1 (process 91046) detached]
Comment 1 Warbeaver 2021-08-18 16:50:07 UTC
Deleting ~/.config/yakuakerc made yakuake successfully start from default settings again.

Content of ~/.config/yakuakerc was:

[Appearance]
Skin=materia-dark
SkinInstalledWithKns=true
Translucency=true

[Desktop Entry]
DefaultProfile=Aritime Dark custom.profile

[Window]
Height=60
Screen=-1
Comment 2 Michael Olbrich 2022-02-18 16:59:26 UTC
I think the 'Screen=-1' is the problem. I've seen the same backtrace and removing that line helps.
When the crash happens, then MainWindow::getScreen() returns -2 (verified with gdb).
'QScreen *screen = QGuiApplication::screens().at(getScreen())' does not work correctly and there is no valid 'screen' object.

I'm not sure why there is a -1 in the config. I didn't change the config manually.
Comment 3 Sergiu Bivol 2023-04-11 21:25:02 UTC
I have encountered this bug today. Ticked Appearance -> Hide borders and Yakuake crashed immediately. Changing "Screen=-1" to "Screen=1" in ~/.config/yakuakerc has allowed Yakuake to start.

Kubuntu 23.04
Yakuake 22.12.3
Qt 5.15.8
Comment 4 Lukáš Karas 2023-05-02 21:43:49 UTC
Fix for the crash: https://invent.kde.org/utilities/yakuake/-/merge_requests/98