Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-33057

Drag and drop segfault

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P2: Important
    • None
    • 5.1.0
    • GUI: Drag and Drop
    • None
    • Qt 5.1.2 on Arch Linux, self-built from git.
      Qt 5.1.0 from Arch packages

    Description

      I'm currently having a problem with drag&drop in my app (https://github.com/peterix/MultiMC5)

      Basically, I have this:
      A main window.
      A modal QDialog, opened from the main window.
      A QTreeView subclass in that dialog.
      A model is used in that view, which has drag and drop enabled - it accepts URLs and provides/accepts a custom data type I use for internal movement of items.
      I drag and drop inside the view, moving an item.
      I try to drag a file into the app, it causes a segfault while the mouse passes over the window(s).

      This doesn't happen when I just drag in files from outside, I do have to drag inside the view to cause the problem.

      The model: https://github.com/peterix/MultiMC5/blob/master/logic/ModList.cpp
      The view: https://github.com/peterix/MultiMC5/blob/master/gui/ModListView.cpp
      The dialog: https://github.com/peterix/MultiMC5/blob/master/gui/LegacyModEditDialog.cpp

      Are there any possible workarounds I could use in my code without rebuilding/fixing Qt?

      Stack trace follows _


      #0 QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> >::data() at /home/peterix/qt5/qtbase/src/corelib/tools/qscopedpointer.h:132
      #1 qGetPtrHelper<QScopedPointer<QObjectData> >() at /home/peterix/qt5/qtbase/src/corelib/global/qglobal.h:886
      #2 QObject::d_func() at /home/peterix/qt5/qtbase/src/corelib/kernel/qobject.h:118
      #3 QMetaObject::activate() at /home/peterix/qt5/qtbase/src/corelib/kernel/qobject.cpp:3364
      #4 QMetaObject::activate() at /home/peterix/qt5/qtbase/src/corelib/kernel/qobject.cpp:3354
      #5 QDrag::actionChanged() at /home/peterix/qt5/qtbase/src/gui/.moc/debug-shared/moc_qdrag.cpp:136
      #6 QPlatformDrag::updateAction() at /home/peterix/qt5/qtbase/src/gui/kernel/qplatformdrag.cpp:225
      #7 QXcbDrag::handleLeave() at /home/peterix/qt5/qtbase/src/plugins/platforms/xcb/qxcbdrag.cpp:875
      #8 QXcbWindow::handleClientMessageEvent() at /home/peterix/qt5/qtbase/src/plugins/platforms/xcb/qxcbwindow.cpp:1527
      #9 QXcbConnection::handleClientMessageEvent() at /home/peterix/qt5/qtbase/src/plugins/platforms/xcb/qxcbconnection.cpp:1201
      #10 QXcbConnection::handleXcbEvent() at /home/peterix/qt5/qtbase/src/plugins/platforms/xcb/qxcbconnection.cpp:817
      #11 QXcbConnection::processXcbEvents() at /home/peterix/qt5/qtbase/src/plugins/platforms/xcb/qxcbconnection.cpp:1164
      #12 QXcbConnection::qt_static_metacall() at /home/peterix/qt5/qtbase/src/plugins/platforms/xcb/.moc/debug-shared/moc_qxcbconnection.cpp:170
      #13 QMetaCallEvent::placeMetaCall() at /home/peterix/qt5/qtbase/src/corelib/kernel/qobject.cpp:479
      #14 QObject::event() at /home/peterix/qt5/qtbase/src/corelib/kernel/qobject.cpp:1070
      #15 QApplicationPrivate::notify_helper() at /home/peterix/qt5/qtbase/src/widgets/kernel/qapplication.cpp:3457
      #16 QApplication::notify() at /home/peterix/qt5/qtbase/src/widgets/kernel/qapplication.cpp:2878
      #17 QCoreApplication::notifyInternal() at /home/peterix/qt5/qtbase/src/corelib/kernel/qcoreapplication.cpp:867
      #18 QCoreApplication::sendEvent() at /home/peterix/qt5/qtbase/src/corelib/kernel/qcoreapplication.h:232
      #19 QCoreApplicationPrivate::sendPostedEvents() at /home/peterix/qt5/qtbase/src/corelib/kernel/qcoreapplication.cpp:1471
      #20 QCoreApplication::sendPostedEvents() at /home/peterix/qt5/qtbase/src/corelib/kernel/qcoreapplication.cpp:1329

      Attachments

        1. dndtest.tar.gz
          12 kB
        2. screen.JPG
          screen.JPG
          212 kB
        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            paeglis Gatis Paeglis
            peterix Petr Mrazek
            Votes:
            3 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes