Raadush
17th October 2012, 13:57
Hi, I have created simple qt gui application just to verify if Im doing something bad in my other application, but seems to me, that there is some kind of error in qt. I have this code:
#include "mainwindow.h"
#include <QProgressDialog>
QProgressDialog *dialog;
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
{
dialog = new QProgressDialog(this);
dialog->setValue(50);
dialog->show();
}
MainWindow::~MainWindow()
{
delete(dialog);
}
and when i run builtin valgrind tool on it, i get those errors on line dialog->setValue(50):
Conditional jump or move depends on uninitialised value(s)
in MainWindow::MainWindow(QWidget*) in mainwindow.cpp:10
1: __divdi3 in /usr/lib/libgcc_s-4.7.2-20120921.so.1
2: QElapsedTimer::elapsed() const in /usr/lib/libQtCore.so.4.8.2
3: QProgressDialog::setValue(int) in /usr/lib/libQtGui.so.4.8.2
4: MainWindow::MainWindow(QWidget*) in <a href="file:///home/radek/Development/LeakTest/mainwindow.cpp:10" >mainwindow.cpp:10</a>
5: main in <a href="file:///home/radek/Development/LeakTest/main.cpp:7" >main.cpp:7</a>
Uninitialised value was created by a heap allocation 1: operator new(unsigned int) in /builddir/build/BUILD/valgrind-3.7.0/coregrind/m_replacemalloc/vg_replace_malloc.c:282
2: QProgressDialog::QProgressDialog(QWidget*, QFlags<Qt::WindowType>) in /usr/lib/libQtGui.so.4.8.2
3: main in <a href="file:///home/radek/Development/LeakTest/main.cpp:7" >main.cpp:7</a>
Conditional jump or move depends on uninitialised value(s)
in MainWindow::MainWindow(QWidget*) in mainwindow.cpp:10
1: __divdi3 in /usr/lib/libgcc_s-4.7.2-20120921.so.1
2: QElapsedTimer::elapsed() const in /usr/lib/libQtCore.so.4.8.2
3: QProgressDialog::setValue(int) in /usr/lib/libQtGui.so.4.8.2
4: MainWindow::MainWindow(QWidget*) in <a href="file:///home/radek/Development/LeakTest/mainwindow.cpp:10" >mainwindow.cpp:10</a>
5: main in <a href="file:///home/radek/Development/LeakTest/main.cpp:7" >main.cpp:7</a>
Uninitialised value was created by a heap allocation 1: operator new(unsigned int) in /builddir/build/BUILD/valgrind-3.7.0/coregrind/m_replacemalloc/vg_replace_malloc.c:282
2: QProgressDialog::QProgressDialog(QWidget*, QFlags<Qt::WindowType>) in /usr/lib/libQtGui.so.4.8.2
3: main in <a href="file:///home/radek/Development/LeakTest/main.cpp:7" >main.cpp:7</a>
Conditional jump or move depends on uninitialised value(s)
in MainWindow::MainWindow(QWidget*) in mainwindow.cpp:10
1: QProgressDialog::setValue(int) in /usr/lib/libQtGui.so.4.8.2
2: MainWindow::MainWindow(QWidget*) in <a href="file:///home/radek/Development/LeakTest/mainwindow.cpp:10" >mainwindow.cpp:10</a>
3: main in <a href="file:///home/radek/Development/LeakTest/main.cpp:7" >main.cpp:7</a>
Uninitialised value was created by a heap allocation 1: operator new(unsigned int) in /builddir/build/BUILD/valgrind-3.7.0/coregrind/m_replacemalloc/vg_replace_malloc.c:282
2: QProgressDialog::QProgressDialog(QWidget*, QFlags<Qt::WindowType>) in /usr/lib/libQtGui.so.4.8.2
3: main in <a href="file:///home/radek/Development/LeakTest/main.cpp:7" >main.cpp:7</a>
Am I doing something wrong? Is '50' uninitialized? I don't think so. :) Or it's really some Qt issue? And I don't want to mention another 60 issues when i check 'External Errors'. Is Qt really that "leaky"?
#include "mainwindow.h"
#include <QProgressDialog>
QProgressDialog *dialog;
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
{
dialog = new QProgressDialog(this);
dialog->setValue(50);
dialog->show();
}
MainWindow::~MainWindow()
{
delete(dialog);
}
and when i run builtin valgrind tool on it, i get those errors on line dialog->setValue(50):
Conditional jump or move depends on uninitialised value(s)
in MainWindow::MainWindow(QWidget*) in mainwindow.cpp:10
1: __divdi3 in /usr/lib/libgcc_s-4.7.2-20120921.so.1
2: QElapsedTimer::elapsed() const in /usr/lib/libQtCore.so.4.8.2
3: QProgressDialog::setValue(int) in /usr/lib/libQtGui.so.4.8.2
4: MainWindow::MainWindow(QWidget*) in <a href="file:///home/radek/Development/LeakTest/mainwindow.cpp:10" >mainwindow.cpp:10</a>
5: main in <a href="file:///home/radek/Development/LeakTest/main.cpp:7" >main.cpp:7</a>
Uninitialised value was created by a heap allocation 1: operator new(unsigned int) in /builddir/build/BUILD/valgrind-3.7.0/coregrind/m_replacemalloc/vg_replace_malloc.c:282
2: QProgressDialog::QProgressDialog(QWidget*, QFlags<Qt::WindowType>) in /usr/lib/libQtGui.so.4.8.2
3: main in <a href="file:///home/radek/Development/LeakTest/main.cpp:7" >main.cpp:7</a>
Conditional jump or move depends on uninitialised value(s)
in MainWindow::MainWindow(QWidget*) in mainwindow.cpp:10
1: __divdi3 in /usr/lib/libgcc_s-4.7.2-20120921.so.1
2: QElapsedTimer::elapsed() const in /usr/lib/libQtCore.so.4.8.2
3: QProgressDialog::setValue(int) in /usr/lib/libQtGui.so.4.8.2
4: MainWindow::MainWindow(QWidget*) in <a href="file:///home/radek/Development/LeakTest/mainwindow.cpp:10" >mainwindow.cpp:10</a>
5: main in <a href="file:///home/radek/Development/LeakTest/main.cpp:7" >main.cpp:7</a>
Uninitialised value was created by a heap allocation 1: operator new(unsigned int) in /builddir/build/BUILD/valgrind-3.7.0/coregrind/m_replacemalloc/vg_replace_malloc.c:282
2: QProgressDialog::QProgressDialog(QWidget*, QFlags<Qt::WindowType>) in /usr/lib/libQtGui.so.4.8.2
3: main in <a href="file:///home/radek/Development/LeakTest/main.cpp:7" >main.cpp:7</a>
Conditional jump or move depends on uninitialised value(s)
in MainWindow::MainWindow(QWidget*) in mainwindow.cpp:10
1: QProgressDialog::setValue(int) in /usr/lib/libQtGui.so.4.8.2
2: MainWindow::MainWindow(QWidget*) in <a href="file:///home/radek/Development/LeakTest/mainwindow.cpp:10" >mainwindow.cpp:10</a>
3: main in <a href="file:///home/radek/Development/LeakTest/main.cpp:7" >main.cpp:7</a>
Uninitialised value was created by a heap allocation 1: operator new(unsigned int) in /builddir/build/BUILD/valgrind-3.7.0/coregrind/m_replacemalloc/vg_replace_malloc.c:282
2: QProgressDialog::QProgressDialog(QWidget*, QFlags<Qt::WindowType>) in /usr/lib/libQtGui.so.4.8.2
3: main in <a href="file:///home/radek/Development/LeakTest/main.cpp:7" >main.cpp:7</a>
Am I doing something wrong? Is '50' uninitialized? I don't think so. :) Or it's really some Qt issue? And I don't want to mention another 60 issues when i check 'External Errors'. Is Qt really that "leaky"?