Linux / Window default close button / Segmentation fault



  • Hi everybody,

    Linux machine:
    Ubuntu 12.04/Ubuntu Unity
    gcc-Version 4.6.3
    Qt5.0.2

    Starting an application from the console I'm currently facing a challenge regarding the windows default close button (Qt::WindowCloseButtonHint).

    100 events clicking on the close button I'm facing about 62% segmentation faults.

    After reimplementing "closeEvent(QCloseEvent *event)":
    event->ignore();
    emit globalQuit(); (A Signal that a QPushButton triggers too to "quit()" the QApplication) I'm still facing 28% segmentation faults in contrast to using the Quit-QPushButton itself which never causes a segmentation fault.

    This just happens on Linux and is not reproducible on a Mac e.g.

    Is there anybody having an idea about the reason?

    Thanks
    Michael


  • Moderators

    [quote author="michaelPT" date="1369319154"]Is there anybody having an idea about the reason?[/quote]

    maybe...if you post the stack trace. ;)



  • I hope a "catchsegv" output helps.

    *** Segmentation fault
    Register dump:

    EAX: b2003d40 EBX: b2c43ff4 ECX: 00000000 EDX: 00000001
    ESI: 09ab8b98 EDI: 09ab8ba0 EBP: b2003d40 ESP: b29dc200

    EIP: b2bb69d3 EFLAGS: 00010282

    CS: 0073 DS: 007b ES: 007b FS: 0000 GS: 0033 SS: 007b

    Trap: 0000000e Error: 00000014 OldMask: 00000000
    ESP/signal: b29dc200 CR2: b2bb69d3

    FPUCW: ffff037f FPUSW: ffff0020 TAG: ffffffff
    IPOFF: 00000000 CSSEL: 0000 DATAOFF: 00000000 DATASEL: 0000

    ST(0) 0000 0000000000000000 ST(1) 0000 0000000000000000
    ST(2) 0000 0000000000000000 ST(3) 0000 0000000000000000
    ST(4) 0000 0000000000000000 ST(5) 0000 0000000000000000
    ST(6) 0000 8000000000000000 ST(7) 0000 a000400000000000

    Backtrace:


  • Moderators

    Nope, it does not. Run the application in the debugger and check the backtrace. It should point you into the right direction.


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.