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

designer crashes when loading due to problems in phonon

    XMLWordPrintable

Details

    • Bug
    • Resolution: Cannot Reproduce
    • P2: Important
    • 4.7.1
    • 4.5.2, 4.6.0
    • Multimedia, Tools: Designer
    • None

    Description

      When loading designer, I get a segmentation fault in libphonon. The line where the segfault occurs is 3rdparty/phonon/phonon/videowidget.cpp:158. This line contains
      pINTERFACE_CALL(setAspectRatio(aspectRatio));

      pINTERFACE_CALL expands to
      #define pINTERFACE_CALL(function) \
      Iface<PHONON_INTERFACENAME >::cast(this)->function

      For me, the call to Iface<PHONON_INTERFACENAME >::cast(this) returns a null pointer. Then the subsequent dereference of that pointer segfaults.

      Program received signal SIGSEGV, Segmentation fault.
      0xb332574d in Phonon::VideoWidgetPrivate::setupBackendObject (this=0x98ceb60) at ../3rdparty/phonon/phonon/videowidget.cpp:158
      158 pINTERFACE_CALL(setAspectRatio(aspectRatio));
      (gdb) bt full
      #0 0xb332574d in Phonon::VideoWidgetPrivate::setupBackendObject (this=0x98ceb60) at ../3rdparty/phonon/phonon/videowidget.cpp:158
      q = (Phonon::VideoWidget * const) 0x9877288
      w = (class QWidget *) 0x80d63e4
      #1 0xb33261c6 in Phonon::VideoWidgetPrivate::createBackendObject (this=0x98ceb60) at ../3rdparty/phonon/phonon/videowidget.cpp:77
      q = (Phonon::VideoWidget * const) 0x9877288
      #2 0xb3326485 in VideoWidget (this=0x9877288, parent=0x9855d10) at ../3rdparty/phonon/phonon/videowidget.cpp:47
      No locals.
      #3 0xb33275ee in Phonon::VideoPlayerPrivate::init (this=0x987e890, q=0x9855d10, category=Phonon::NoCategory)
      at ../3rdparty/phonon/phonon/videoplayer.cpp:61
      layout = (class QVBoxLayout *) 0x98658a0
      #4 0xb3327a6d in VideoPlayer (this=0x9855d10, category=Phonon::NoCategory, parent=0x0) at ../3rdparty/phonon/phonon/videoplayer.cpp:75
      No locals.
      #5 0xb421eb4b in VideoPlayerPlugin::createWidget () from /opt/qt-4.6.0/plugins/designer/libphononwidgets.so
      No symbol table info available.
      #6 0xb70c0dc0 in qdesigner_internal::WidgetFactory::createCustomWidget (this=0x92be900, className=@0xbfe2e0cc, parentWidget=0x0, creationError=0xbfe2dfc7)
      at shared/widgetfactory.cpp:259
      it =

      {i = 0x92e1a58}


      factory = (QDesignerCustomWidgetInterface *) 0x92d1600
      rc = (class QWidget *) 0x1ab09a4
      lang = (QDesignerLanguageExtension *) 0xbfe2de28
      createdClassNameC = 0xb6e5e08e "\201��zs"
      classNameB = {static shared_null = {ref = {_q_value = 1970}, alloc = 0, size = 0, data = 0x80d6328 "", array = ""}, static shared_empty = {ref =

      { _q_value = 20}

      , alloc = 0, size = 0, data = 0xb5cd3060 "", array = ""}, d = 0x92a28cc}
      classNameC = 0xb588f140 ""
      knownCustomClasses = {q_hash = d = 0x984f1c8, e = 0x984f1c8}
      #7 0xb70c16a9 in qdesigner_internal::WidgetFactory::createWidget (this=0x92be900, widgetName=@0xbfe2e0cc, parentWidget=0x0)
      at shared/widgetfactory.cpp:329
      widgetNameBA = {static shared_null = {ref = {_q_value = 1970}, alloc = 0, size = 0, data = 0x80d6328 "", array = ""}, static shared_empty = {
      ref = {_q_value = 20}, alloc = 0, size = 0, data = 0xb5cd3060 "", array = ""}, d = 0xbfe2e000}
      fallBackBaseClass = {static null =

      {<No data fields>}, static shared_null = {ref = {_q_value = 9028}, alloc = 0, size = 0, data = 0x80d6242,
      clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, static shared_empty = {ref = {_q_value = 7649},
      alloc = 0, size = 0, data = 0xb5cd314e, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}},
      d = 0x92af7f8, static codecForCStrings = 0x0}
      db = (class QDesignerWidgetDataBaseInterface *) 0x0
      baseClass = {static null = {<No data fields>}

      , static shared_null = {ref = {_q_value = 9028}, alloc = 0, size = 0, data = 0x80d6242, clean = 0,
      simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, static shared_empty = {ref = {_q_value = 7649}, alloc = 0,
      size = 0, data = 0xb5cd314e, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, d = 0xb501fd68,
      static codecForCStrings = 0x0}
      customWidgetCreationError = false
      widgetNameC = 0xb705ff1b "\203�\024[]�U\211�S\203�\024�zs��\201�C
      S"
      item = (QDesignerWidgetDataBaseItemInterface *) 0x92be900
      fw = (class QDesignerFormWindowInterface *) 0x0
      w = (class QWidget *) 0x0
      _PRETTY_FUNCTION_ = "virtual QWidget* qdesigner_internal::WidgetFactory::createWidget(const QString&, QWidget*) const"
      #8 0xb70ca4ea in qdesigner_internal::WidgetDataBase::defaultPropertyValues (this=0x92ad660, name=@0xbfe2e0cc) at shared/widgetdatabase.cpp:447
      factory = (class qdesigner_internal::WidgetFactory *) 0x92be900
      object = (class QObject *) 0x0
      result = p = {static shared_null = {ref = {_q_value = 5339}, alloc = 0, begin = 0, end = 0, sharable = 1, array = {0x0, d = 0x47}, d = 0x47}}
      #9 0xb70ca73e in qdesigner_internal::WidgetDataBase::grabDefaultPropertyValues (this=0x92ad660) at shared/widgetdatabase.cpp:469
      dbItem = (QDesignerWidgetDataBaseItemInterface *) 0x92d59d0
      default_prop_values = p = {static shared_null = {ref = {_q_value = 5339}, alloc = 0, begin = 0, end = 0, sharable = 1, array = {0x0,
      d = 0x9883050}, d = 0x9883050}}
      i = 71
      itemCount = 152
      #10 0xb708eeb3 in qdesigner_internal::QDesignerIntegration::initializePlugins (formEditor=0x92391a8) at shared/qdesigner_integration.cpp:366
      widgetDataBase = (class qdesigner_internal::WidgetDataBase *) 0x92ad660
      #11 0xb75e6ca1 in QDesignerComponents::initializePlugins (core=0x92391a8) at qdesigner_components.cpp:142
      No locals.
      #12 0x080829e4 in QDesignerWorkbench (this=0x92ad870) at qdesigner_workbench.cpp:192
      No locals.
      #13 0x08076d5b in QDesigner::initialize (this=0xbfe2e404) at qdesigner.cpp:243
      files = {<QList<QString>> = p = {static shared_null = {ref = {_q_value = 5339}, alloc = 0, begin = 0, end = 0, sharable = 1, array = {0x0,
      d = 0x80d63e4}, d = 0x80d63e4}}, <No data fields>}
      resourceDir = {static null =

      {<No data fields>}, static shared_null = {ref = {_q_value = 9028}, alloc = 0, size = 0, data = 0x80d6242, clean = 0,
      simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, static shared_empty = {ref = {_q_value = 7649}, alloc = 0,
      size = 0, data = 0xb5cd314e, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, d = 0x9263900,
      static codecForCStrings = 0x0}
      translator = (class QTranslator *) 0x92a2f08
      qtTranslator = (class QTranslator *) 0x92abf60
      localSysName = {static null = {<No data fields>}

      , static shared_null = {ref = {_q_value = 9028}, alloc = 0, size = 0, data = 0x80d6242, clean = 0,
      simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, static shared_empty = {ref = {_q_value = 7649}, alloc = 0,
      size = 0, data = 0xb5cd314e, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, d = 0x91fe9c0,
      static codecForCStrings = 0x0}
      translatorFileName = {static null =

      {<No data fields>}, static shared_null = {ref = {_q_value = 9028}, alloc = 0, size = 0, data = 0x80d6242,
      clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, static shared_empty = {ref = {_q_value = 7649},
      alloc = 0, size = 0, data = 0xb5cd314e, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}},
      d = 0x9263a50, static codecForCStrings = 0x0}
      #14 0x08077b68 in QDesigner (this=0xbfe2e404, argc=@0xbfe2e450, argv=0xbfe2e4d4) at qdesigner.cpp:99
      No locals.
      #15 0x08075b2c in main (argc=1, argv=0xbfe2e4d4) at main.cpp:54
      app = {<QApplication> = {<QCoreApplication> = {<QObject> = {_vptr.QObject = 0x80bcec8, static staticMetaObject = {d = {superdata = 0x0,
      stringdata = 0xb5c55a60 "QObject", data = 0xb5c55b00, extradata = 0xb5ccb3c0}}, d_ptr = {d = 0x91fae78}, static staticQtMetaObject = {d = { superdata = 0x0, stringdata = 0xb5c60760 "Qt", data = 0xb5c63d20, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = 0x80d6160,
      stringdata = 0xb5c69be0 "QCoreApplication", data = 0xb5c69c80, extradata = 0x0}}, static self = 0xbfe2e404}, static staticMetaObject = {d = { superdata = 0xb5cd0564, stringdata = 0xb683b840 "QApplication", data = 0xb683ba80, extradata = 0x0}}}, static staticMetaObject = {d = {
      superdata = 0x80d6140, stringdata = 0x80bcdc0 "QDesigner", data = 0x80bce20, extradata = 0x0}}, m_server = 0x0, m_client = 0x0, m_workbench = 0x0,
      m_mainWindow = {o = 0x0}, m_errorMessageDialog = {o = 0x0}, m_initializationErrors = {static null = {<No data fields>}

      , static shared_null = {ref =

      { _q_value = 9028}

      , alloc = 0, size = 0, data = 0x80d6242, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0,
      array = {0}}, static shared_empty = {ref = {_q_value = 7649}, alloc = 0, size = 0, data = 0xb5cd314e, clean = 0, simpletext = 0, righttoleft = 0,
      asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, d = 0x80d6230, static codecForCStrings = 0x0}, m_lastErrorMessage = {
      static null =

      {<No data fields>}

      , static shared_null = {ref = {_q_value = 9028}, alloc = 0, size = 0, data = 0x80d6242, clean = 0, simpletext = 0,
      righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, static shared_empty = {ref = {_q_value = 7649}, alloc = 0, size = 0,
      data = 0xb5cd314e, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, d = 0x80d6230,
      static codecForCStrings = 0x0}, m_suppressNewFormShow = false}

      Attachments

        Issue Links

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

          Activity

            People

              korbatit Kurt Korbatits (closed Nokia identity) (Inactive)
              chrisburel Chris Burel
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes