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

Segfault when closing "Edit Combobox" dialog if using transparent GUI style

    XMLWordPrintable

Details

    • Bug
    • Resolution: Out of scope
    • Not Evaluated
    • None
    • 4.7.2
    • Tools: Designer
    • None
    • af617c319772a34115d0c4d802f25a807cb43065

    Description

      Qt Designer segfaults when closing the "Edit Combobox" dialog (by any means) when using a GUI style with transparency enabled. I can reproduce with both Oxygen Transparent (https://projects.kde.org/projects/playground/artwork/oxygen-transparent) and QtCurve (http://kde-look.org/content/show.php?content=40492) when they have opacity < 100%. If they have opacity at 100%, there is no segfault and ComboBox editing works as expected.

      To reproduce:
      1. Use a GUI style with transparency enabled
      2. In Qt Designer, create a new dialog
      3. Add a ComboBox to the form
      4. Right-click the ComboBox and select "Edit items..."
      5. Close the "Edit Combobox" dialog (via Ok or Cancel buttons, or Esc, etc)

      Here's the relevant output from gdb:

      [Thread 0x7fffd6de0700 (LWP 10449) exited]
      
      Program received signal SIGSEGV, Segmentation fault.
      0x00007ffff646bd0f in QWidget::testAttribute_helper (this=0x7fffffffb6e0,
          attribute=Qt::WA_WState_Created) at kernel/qwidget.cpp:10870
      10870   kernel/qwidget.cpp: No such file or directory.
              in kernel/qwidget.cpp
      (gdb) bt
      #0  0x00007ffff646bd0f in QWidget::testAttribute_helper
      (this=0x7fffffffb6e0,
          attribute=Qt::WA_WState_Created) at kernel/qwidget.cpp:10870
      #1  0x00007fffec713491 in ?? () from /usr/lib/kde4/plugins/styles/qtcurve.so
      #2  0x00007fffec725588 in ?? () from /usr/lib/kde4/plugins/styles/qtcurve.so
      #3  0x00007ffff5c1f1c9 in QObject::event (this=0x6bc1f0,
          e=<value optimised out>) at kernel/qobject.cpp:1190
      #4  0x00007ffff64299e4 in QApplicationPrivate::notify_helper
      (this=0x66fa00,
          receiver=0x6bc1f0, e=0x7fffffffdec0) at kernel/qapplication.cpp:4462
      #5  0x00007ffff642e3aa in QApplication::notify (this=<value optimised out>,
          receiver=0x6bc1f0, e=0x7fffffffdec0) at kernel/qapplication.cpp:4341
      #6  0x00007ffff5c0b49c in QCoreApplication::notifyInternal (this=
          0x7fffffffe180, receiver=0x6bc1f0, event=0x7fffffffdec0)
          at kernel/qcoreapplication.cpp:731
      #7  0x00007ffff5c38f12 in sendEvent (this=0x674c10)
          at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
      #8  QTimerInfoList::activateTimers (this=0x674c10)
          at kernel/qeventdispatcher_unix.cpp:604
      #9  0x00007ffff5c35cf4 in timerSourceDispatch (source=<value optimised out>)
          at kernel/qeventdispatcher_glib.cpp:184
      #10 0x00007ffff4197bcd in g_main_dispatch (context=0x673ce0)
          at /build/buildd/glib2.0-2.28.3/./glib/gmain.c:2440
      #11 g_main_context_dispatch (context=0x673ce0)
          at /build/buildd/glib2.0-2.28.3/./glib/gmain.c:3013
      #12 0x00007ffff41983a8 in g_main_context_iterate (context=0x673ce0,
          block=<value optimised out>, dispatch=1, self=<value optimised out>)
          at /build/buildd/glib2.0-2.28.3/./glib/gmain.c:3091
      #13 0x00007ffff4198639 in g_main_context_iteration (context=0x673ce0,
          may_block=1) at /build/buildd/glib2.0-2.28.3/./glib/gmain.c:3154
      #14 0x00007ffff5c363ef in QEventDispatcherGlib::processEvents
      (this=0x671090,
          flags=<value optimised out>) at kernel/qeventdispatcher_glib.cpp:422
      #15 0x00007ffff64d0dee in QGuiEventDispatcherGlib::processEvents (
          this=<value optimised out>, flags=<value optimised out>)
          at kernel/qguieventdispatcher_glib.cpp:204
      #16 0x00007ffff5c0a882 in QEventLoop::processEvents (
          this=<value optimised out>, flags=...) at kernel/qeventloop.cpp:149
      #17 0x00007ffff5c0aabc in QEventLoop::exec (this=0x7fffffffe130, flags=...)
          at kernel/qeventloop.cpp:201
      #18 0x00007ffff5c0eecb in QCoreApplication::exec ()
          at kernel/qcoreapplication.cpp:1008
      #19 0x000000000042964f in main (argc=1, argv=0x7fffffffe2b8) at main.cpp:57

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            kleint Friedemann Kleint
            infectedsoundsystem Mike Shutlar
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes