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

QtGraphs/6.8: Many uninitialized class member variables

XMLWordPrintable

    • All
    • 87f2710f9 (dev), 8c9b97ea2 (6.8)

      Running valgrind on the widgetgraphgallery example reveals:

      ==128863==    at 0xC7594F0: ??? (in /data1/kleint/qt-68/install-qt-68/lib/libQt6XcbQpa.so.6.8.0)
      ==128863== 
      ==128863== Conditional jump or move depends on uninitialised value(s)
      ==128863==    at 0x49AEB0A: QGraphsTheme::setBackgroundVisible(bool) (qgraphstheme.cpp:759)
      ==128863==    by 0x49E6903: QGraphsTheme::QGraphsTheme(QObject*) (qgraphstheme.cpp:502)
      --
      ==128863==    by 0x722F8E8: QQmlComponentPrivate::createWithProperties(QObject*, QMap<QString, QVariant> const&, QQmlContext*, QQmlComponentPrivate::CreateBehavior) (qqmlcomponent.cpp:945)
      ==128863== 
      ==128863== Conditional jump or move depends on uninitialised value(s)
      ==128863==    at 0x49AEAD4: QGraphsTheme::setPlotAreaBackgroundVisible(bool) (qgraphstheme.cpp:736)
      ==128863==    by 0x49E6910: QGraphsTheme::QGraphsTheme(QObject*) (qgraphstheme.cpp:503)
      --
      ==128863==    by 0x722F8E8: QQmlComponentPrivate::createWithProperties(QObject*, QMap<QString, QVariant> const&, QQmlContext*, QQmlComponentPrivate::CreateBehavior) (qqmlcomponent.cpp:945)
      ==128863== 
      ==128863== Conditional jump or move depends on uninitialised value(s)
      ==128863==    at 0x49AF013: QGraphsTheme::setLabelBackgroundVisible(bool) (qgraphstheme.cpp:1047)
      ==128863==    by 0x49E691D: QGraphsTheme::QGraphsTheme(QObject*) (qgraphstheme.cpp:504)
      --
      ==128863==    by 0x722F8E8: QQmlComponentPrivate::createWithProperties(QObject*, QMap<QString, QVariant> const&, QQmlContext*, QQmlComponentPrivate::CreateBehavior) (qqmlcomponent.cpp:945)
      ==128863== 
      ==128863== Conditional jump or move depends on uninitialised value(s)
      ==128863==    at 0x49AEB40: QGraphsTheme::setGridVisible(bool) (qgraphstheme.cpp:782)
      ==128863==    by 0x49E692A: QGraphsTheme::QGraphsTheme(QObject*) (qgraphstheme.cpp:505)
      --
      ==128863==    by 0x722F8E8: QQmlComponentPrivate::createWithProperties(QObject*, QMap<QString, QVariant> const&, QQmlContext*, QQmlComponentPrivate::CreateBehavior) (qqmlcomponent.cpp:945)
      ==128863== 
      ==128863== Conditional jump or move depends on uninitialised value(s)
      ==128863==    at 0x49AEC28: QGraphsTheme::setLabelsVisible(bool) (qgraphstheme.cpp:829)
      ==128863==    by 0x49E6937: QGraphsTheme::QGraphsTheme(QObject*) (qgraphstheme.cpp:506)
      --
      ==128863==    by 0x722F8E8: QQmlComponentPrivate::createWithProperties(QObject*, QMap<QString, QVariant> const&, QQmlContext*, QQmlComponentPrivate::CreateBehavior) (qqmlcomponent.cpp:945)
      ==128863== 
      ==128863== Conditional jump or move depends on uninitialised value(s)
      ==128863==    at 0x49AF051: QGraphsTheme::setLabelBorderVisible(bool) (qgraphstheme.cpp:1070)
      ==128863==    by 0x49E695F: QGraphsTheme::QGraphsTheme(QObject*) (qgraphstheme.cpp:512)
      --
      ==128863==    by 0x722F8E8: QQmlComponentPrivate::createWithProperties(QObject*, QMap<QString, QVariant> const&, QQmlContext*, QQmlComponentPrivate::CreateBehavior) (qqmlcomponent.cpp:945)
      ==128863== 
      ==128863== Conditional jump or move depends on uninitialised value(s)
      ==128863==    at 0x776DAE5: QQuick3DObjectPrivate::addToDirtyList() (qquick3dobject.cpp:766)
      ==128863==    by 0x776DD2F: QQuick3DObjectPrivate::dirty(QQuick3DObjectPrivate::DirtyType) (qquick3dobject.cpp:750)
      --
      ==128863==    by 0x129CAD: BarGraphWidget::initialize() (in /data1/kleint/qt-68/qt-68/qtgraphs/examples/graphs/3d/widgetgraphgallery_68/widgetgraphgallery)
      ==128863== 
      ==128863== Conditional jump or move depends on uninitialised value(s)
      ==128863==    at 0x49AEB0A: QGraphsTheme::setBackgroundVisible(bool) (qgraphstheme.cpp:759)
      ==128863==    by 0x49E6903: QGraphsTheme::QGraphsTheme(QObject*) (qgraphstheme.cpp:502)
      --
      ==128863==    by 0x722F8E8: QQmlComponentPrivate::createWithProperties(QObject*, QMap<QString, QVariant> const&, QQmlContext*, QQmlComponentPrivate::CreateBehavior) (qqmlcomponent.cpp:945)
      ==128863== 
      ==128863== Conditional jump or move depends on uninitialised value(s)
      ==128863==    at 0x49AEAD4: QGraphsTheme::setPlotAreaBackgroundVisible(bool) (qgraphstheme.cpp:736)
      ==128863==    by 0x49E6910: QGraphsTheme::QGraphsTheme(QObject*) (qgraphstheme.cpp:503)
      --
      ==128863==    by 0x722F8E8: QQmlComponentPrivate::createWithProperties(QObject*, QMap<QString, QVariant> const&, QQmlContext*, QQmlComponentPrivate::CreateBehavior) (qqmlcomponent.cpp:945)
      ==128863== 
      ==128863== Conditional jump or move depends on uninitialised value(s)
      ==128863==    at 0x49AF013: QGraphsTheme::setLabelBackgroundVisible(bool) (qgraphstheme.cpp:1047)
      ==128863==    by 0x49E691D: QGraphsTheme::QGraphsTheme(QObject*) (qgraphstheme.cpp:504)
      --
      ==128863==    by 0x722F8E8: QQmlComponentPrivate::createWithProperties(QObject*, QMap<QString, QVariant> const&, QQmlContext*, QQmlComponentPrivate::CreateBehavior) (qqmlcomponent.cpp:945)
      ==128863== 
      ==128863== Conditional jump or move depends on uninitialised value(s)
      ==128863==    at 0x49AEB40: QGraphsTheme::setGridVisible(bool) (qgraphstheme.cpp:782)
      ==128863==    by 0x49E692A: QGraphsTheme::QGraphsTheme(QObject*) (qgraphstheme.cpp:505)
      --
      ==128863==    by 0x722F8E8: QQmlComponentPrivate::createWithProperties(QObject*, QMap<QString, QVariant> const&, QQmlContext*, QQmlComponentPrivate::CreateBehavior) (qqmlcomponent.cpp:945)
      ==128863== 
      ==128863== Conditional jump or move depends on uninitialised value(s)
      ==128863==    at 0x49AEC28: QGraphsTheme::setLabelsVisible(bool) (qgraphstheme.cpp:829)
      ==128863==    by 0x49E6937: QGraphsTheme::QGraphsTheme(QObject*) (qgraphstheme.cpp:506)
      --
      ==128863==    by 0x722F8E8: QQmlComponentPrivate::createWithProperties(QObject*, QMap<QString, QVariant> const&, QQmlContext*, QQmlComponentPrivate::CreateBehavior) (qqmlcomponent.cpp:945)
      ==128863== 
      ==128863== Conditional jump or move depends on uninitialised value(s)
      ==128863==    at 0x49AF051: QGraphsTheme::setLabelBorderVisible(bool) (qgraphstheme.cpp:1070)
      ==128863==    by 0x49E695F: QGraphsTheme::QGraphsTheme(QObject*) (qgraphstheme.cpp:512)
      --
      ==128863==    by 0x722F8E8: QQmlComponentPrivate::createWithProperties(QObject*, QMap<QString, QVariant> const&, QQmlContext*, QQmlComponentPrivate::CreateBehavior) (qqmlcomponent.cpp:945)
      ==128863== 
      ==128863== Conditional jump or move depends on uninitialised value(s)
      ==128863==    at 0x494A79D: QQuickGraphsScatter::setSelectedItem(long long, QScatter3DSeries*) (qquickgraphsscatter.cpp:857)
      ==128863==    by 0x496154B: QQuickGraphsScatter::handleAxisRangeChangedBySender(QObject*) (qquickgraphsscatter.cpp:910)
      --
      ==128863==    by 0x48703C0: Q3DGraphsWidgetItem::setWidget(QQuickWidget*) (q3dgraphswidgetitem.cpp:655)
      ==128863== 
      ==128863== Conditional jump or move depends on uninitialised value(s)
      ==128863==    at 0x494A866: QQuickGraphsScatter::setSelectedItem(long long, QScatter3DSeries*) (qquickgraphsscatter.cpp:873)
      ==128863==    by 0x496154B: QQuickGraphsScatter::handleAxisRangeChangedBySender(QObject*) (qquickgraphsscatter.cpp:910)
      --
      ==128863==    by 0x48703C0: Q3DGraphsWidgetItem::setWidget(QQuickWidget*) (q3dgraphswidgetitem.cpp:655)
      ==128863== 
      ==128863== Conditional jump or move depends on uninitialised value(s)
      ==128863==    at 0x49AEB0A: QGraphsTheme::setBackgroundVisible(bool) (qgraphstheme.cpp:759)
      ==128863==    by 0x49E6903: QGraphsTheme::QGraphsTheme(QObject*) (qgraphstheme.cpp:502)
      --
      ==128863==    by 0x722F8E8: QQmlComponentPrivate::createWithProperties(QObject*, QMap<QString, QVariant> const&, QQmlContext*, QQmlComponentPrivate::CreateBehavior) (qqmlcomponent.cpp:945)
      ==128863== 
      ==128863== Conditional jump or move depends on uninitialised value(s)
      ==128863==    at 0x49AEAD4: QGraphsTheme::setPlotAreaBackgroundVisible(bool) (qgraphstheme.cpp:736)
      ==128863==    by 0x49E6910: QGraphsTheme::QGraphsTheme(QObject*) (qgraphstheme.cpp:503)
      --
      ==128863==    by 0x722F8E8: QQmlComponentPrivate::createWithProperties(QObject*, QMap<QString, QVariant> const&, QQmlContext*, QQmlComponentPrivate::CreateBehavior) (qqmlcomponent.cpp:945)
      ==128863== 
      ==128863== Conditional jump or move depends on uninitialised value(s)
      ==128863==    at 0x49AF013: QGraphsTheme::setLabelBackgroundVisible(bool) (qgraphstheme.cpp:1047)
      ==128863==    by 0x49E691D: QGraphsTheme::QGraphsTheme(QObject*) (qgraphstheme.cpp:504)
      --
      ==128863==    by 0x722F8E8: QQmlComponentPrivate::createWithProperties(QObject*, QMap<QString, QVariant> const&, QQmlContext*, QQmlComponentPrivate::CreateBehavior) (qqmlcomponent.cpp:945)
      ==128863== 
      ==128863== Conditional jump or move depends on uninitialised value(s)
      ==128863==    at 0x49AEB40: QGraphsTheme::setGridVisible(bool) (qgraphstheme.cpp:782)
      ==128863==    by 0x49E692A: QGraphsTheme::QGraphsTheme(QObject*) (qgraphstheme.cpp:505)
      --
      ==128863==    by 0x722F8E8: QQmlComponentPrivate::createWithProperties(QObject*, QMap<QString, QVariant> const&, QQmlContext*, QQmlComponentPrivate::CreateBehavior) (qqmlcomponent.cpp:945)
      ==128863== 
      ==128863== Conditional jump or move depends on uninitialised value(s)
      ==128863==    at 0x49AEC28: QGraphsTheme::setLabelsVisible(bool) (qgraphstheme.cpp:829)
      ==128863==    by 0x49E6937: QGraphsTheme::QGraphsTheme(QObject*) (qgraphstheme.cpp:506)
      --
      ==128863==    by 0x722F8E8: QQmlComponentPrivate::createWithProperties(QObject*, QMap<QString, QVariant> const&, QQmlContext*, QQmlComponentPrivate::CreateBehavior) (qqmlcomponent.cpp:945)
      ==128863== 
      ==128863== Conditional jump or move depends on uninitialised value(s)
      ==128863==    at 0x49AF051: QGraphsTheme::setLabelBorderVisible(bool) (qgraphstheme.cpp:1070)
      ==128863==    by 0x49E695F: QGraphsTheme::QGraphsTheme(QObject*) (qgraphstheme.cpp:512)
      --
      ==128863==    at 0x172AFB4F: ??? (in /usr/lib/x86_64-linux-gnu/libGLX_nvidia.so.470.256.02)
      ==128863== 
      ==128863== Conditional jump or move depends on uninitialised value(s)
      ==128863==    at 0x776DAF6: QQuick3DObjectPrivate::addToDirtyList() (qquick3dobject.cpp:766)
      ==128863==    by 0x776DD2F: QQuick3DObjectPrivate::dirty(QQuick3DObjectPrivate::DirtyType) (qquick3dobject.cpp:750)
      --
      ==128863==    by 0x6C1D4E7: QQuickWindow::beforeSynchronizing() (moc_qquickwindow.cpp:617)
      ==128863== 
      ==128863== Conditional jump or move depends on uninitialised value(s)
      ==128863==    at 0x57AB1ED: QRhiGles2::executeBindGraphicsPipeline(QGles2CommandBuffer*, QGles2GraphicsPipeline*) (qrhigles2.cpp:3953)
      ==128863==    by 0x57AE3EA: QRhiGles2::executeCommandBuffer(QRhiCommandBuffer*) (qrhigles2.cpp:3297)
      

      The code should be ported to use member initialization (bool m_gridVisible= false; ) to avoid this, also, static code analysis seems appropriate.

      There is also one occurrence in QQuick3DObjectPrivate::addToDirtyList() .

        1. qtbug126627_valgrindlog.txt
          107 kB
          Friedemann Kleint
        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

            oulu_hillbilly Sami Varanka
            kleint Friedemann Kleint
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved:

                There are no open Gerrit changes