Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. [SOLVED] Crash when clicking on authors button in about dialog on MacOSX.
Forum Updated to NodeBB v4.3 + New Features

[SOLVED] Crash when clicking on authors button in about dialog on MacOSX.

Scheduled Pinned Locked Moved General and Desktop
6 Posts 1 Posters 4.1k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M Offline
    M Offline
    mkae
    wrote on last edited by
    #1

    When I start the KDE application kmymoney4-devel (using QT 4.7.3), then go to Preferences/Plugin, select the info button of one of the plugins (e.g. libofx) and then click the authors button in the upcoming about dialog the application crashes.

    The same happens in the applications about dialog as well, as I noticed later.

    The "original issue at MacPorts":http://trac.macports.org/ticket/28410 I am referring to here has debug logs.

    There one can see that the culprit seems to be containerWidget():
    @
    Program received signal EXC_BAD_ACCESS, Could not access memory.
    Reason: KERN_INVALID_ADDRESS at address: 0x0000000000000008
    0x000000010499ba80 in containerWidget ()
    (gdb) bt f
    #0 0x000000010499ba80 in containerWidget ()
    No symbol table info available.
    #1 0x00000001049b180d in QStyleSheetStyle::drawPrimitive ()
    No symbol table info available.
    #2 0x0000000101d93ef3 in KDEPrivate::KAboutApplicationPersonListDelegate::paint ()
    No symbol table info available.
    #3 0x0000000104baf6c8 in QListView::paintEvent ()
    @

    To get more info I certainly would need to have QT in its debug variant installed, so that I could dive into said containerWidget()...

    But I hope that someone might have a clue on this list as to what might cause this on MacOSX. It doesn't happen on Linux, that I know for sure. :-)

    1 Reply Last reply
    0
    • M Offline
      M Offline
      mkae
      wrote on last edited by
      #2

      Well, the crash happens in qstylesheetstyle.cpp line 4252:
      @case PE_Widget:
      if (!rule.hasDrawable()) {
      QWidget *container = containerWidget(w);
      if (autoFillDisabledWidgets->contains(container)
      @

      The debugger shows this as the crash position:
      @
      0x0000000103823b85 <+4117> mov %r14,%rdi
      0x0000000103823b88 <+4120> callq 0x10380dd90 <_ZL15containerWidgetPK7QWidget>
      -> 0x0000000103823b8d <+4125> mov %rax,-0x578(%rbp)
      @
      (The arrow marks the position where the program crashes with "EXC_BAD_ACCESS"!)

      Too bad that - for some reason - I can't get the debugger to accept my QT4 debug library. It runs fine through KMyMoney's code line by line, but cannot step into QT4 code. :-(

      That's why I can't debug the values of the variables so easily - well, at least my knowledge of assembler isn't good enough to make the link to the original C++ code. :-/

      1 Reply Last reply
      0
      • M Offline
        M Offline
        mkae
        wrote on last edited by
        #3

        I verified with a minimal KDE app that the crash doesn't occur on OpenSuSE 11.2 Linux but happens on Mac OS X if more than the standard about dialog info is being used.

        See "issue 1 here":https://bitbucket.org/mkae/kde-tests/issue/1/aboutboxcrash-only-on-mac-os-x

        Code is available here: https://bitbucket.org/mkae/kde-tests/downloads

        1 Reply Last reply
        0
        • M Offline
          M Offline
          mkae
          wrote on last edited by
          #4

          Unfortunately it is impossible to debug the above code using
          @
          $ DYLD_IMAGE_SUFFIX=_debug gdb
          @
          on MacOSX, since the app will stop with errors like these:
          @
          On Mac OS X, you might be loading two sets of Qt binaries into the same process. Check that all plugins are compiled against the right Qt binaries. Export DYLD_PRINT_LIBRARIES=1 and check that only one set of binaries are being loaded.
          QWidget: Must construct a QApplication before a QPaintDevice

          Program received signal SIGABRT, Aborted.
          0x000000010128ada2 in __kill ()
          (gdb)
          @

          1 Reply Last reply
          0
          • M Offline
            M Offline
            mkae
            wrote on last edited by
            #5

            As discussed "here ":https://bitbucket.org/mkae/kde-tests/issue/1/aboutboxcrash-only-on-mac-os-x the crashing about dialog is probably not a QT issue, but rather a KDE bug. I'll go to the KDE-DEVELOP mailing list with this.

            1 Reply Last reply
            0
            • M Offline
              M Offline
              mkae
              wrote on last edited by
              #6

              This bug has been resolved in Qt 4.8.0! :-)

              1 Reply Last reply
              0

              • Login

              • Login or register to search.
              • First post
                Last post
              0
              • Categories
              • Recent
              • Tags
              • Popular
              • Users
              • Groups
              • Search
              • Get Qt Extensions
              • Unsolved