Название: Ругается Valgrind на очевидные вещи, а есть ли утечка? Отправлено: Fregloin от Марта 28, 2014, 11:52 Решил прогнать программу через Valgrind. И удивился, когда увидел, что он ругается на такие участки кода
Код: void UnlinkedItemsDialog::on_scanMatchObjectsButton_clicked() Цитировать 576 bytes in 16 blocks are definitely lost in loss record 8,943 of 9,454 в UnlinkedItemsDialog::on_scanMatchObjectsButton_clicked() в extensions/logic/editor/dialogs/unlinkeditemsdialog.cpp:259 1: malloc в /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so 2: /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0 3: /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0 4: /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0 5: /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0 6: xcb_flush в /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0 7: 0xc917dd9 8: 0xc91811f 9: QBackingStore::flush(QRegion const&, QWindow*, QPoint const&) в /opt/Qt/5.2.0/gcc_64/lib/libQt5Gui.so.5.2.0 10: /opt/Qt/5.2.0/gcc_64/lib/libQt5Widgets.so.5.2.0 11: /opt/Qt/5.2.0/gcc_64/lib/libQt5Widgets.so.5.2.0 12: QWidgetPrivate::syncBackingStore() в /opt/Qt/5.2.0/gcc_64/lib/libQt5Widgets.so.5.2.0 13: QWidget::event(QEvent*) в /opt/Qt/5.2.0/gcc_64/lib/libQt5Widgets.so.5.2.0 14: QApplicationPrivate::notify_helper(QObject*, QEvent*) в /opt/Qt/5.2.0/gcc_64/lib/libQt5Widgets.so.5.2.0 15: QApplication::notify(QObject*, QEvent*) в /opt/Qt/5.2.0/gcc_64/lib/libQt5Widgets.so.5.2.0 16: QCoreApplication::notifyInternal(QObject*, QEvent*) в /opt/Qt/5.2.0/gcc_64/lib/libQt5Core.so.5.2.0 17: QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) в /opt/Qt/5.2.0/gcc_64/lib/libQt5Core.so.5.2.0 18: /opt/Qt/5.2.0/gcc_64/lib/libQt5Core.so.5.2.0 19: g_main_context_dispatch в /lib/x86_64-linux-gnu/libglib-2.0.so.0.3800.1 20: /lib/x86_64-linux-gnu/libglib-2.0.so.0.3800.1 21: g_main_context_iteration в /lib/x86_64-linux-gnu/libglib-2.0.so.0.3800.1 22: QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) в /opt/Qt/5.2.0/gcc_64/lib/libQt5Core.so.5.2.0 23: QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) в /opt/Qt/5.2.0/gcc_64/lib/libQt5Core.so.5.2.0 24: QDialog::exec() в /opt/Qt/5.2.0/gcc_64/lib/libQt5Widgets.so.5.2.0 25: UnlinkedItemsDialog::on_scanMatchObjectsButton_clicked() в <a href="file:///..../editor/dialogs/unlinkeditemsdialog.cpp:259" >extensions/logic/editor/dialogs/unlinkeditemsdialog.cpp:259</a> Хм, казалось бы диалог должен уничтожиться после выхода из функции слота. Или я чего то не понимаю. И в программе находит несколько таких мест, хотя суть одна - при вызове метода exec() диалога, который создан в стеке - говорит что память течет. Разъясните, может я что то упустил из вида. Хотя скажу, что очень много течи находит во внутренних либах и либах Qt. |