[Qt-interest] Analyze memory errors
Linos
info at linos.es
Fri Jul 8 18:16:30 CEST 2011
El 08/07/11 10:53, Thiago Macieira escribió:
> On Friday, 8 de July de 2011 10:08:06 Linos wrote:
>> 1: memcpy in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so
>> 2: QListData::insert(int) in /usr/lib/libQtCore.so.4.7.3
>
>> I think that happens when i use QList::insert method.
>>
>> This is noise and can be ignored or this is reporting a problem in QList?
>
> It's not noise. Whether it can be ignored or not, it depends on what exactly
> that memcpy is doing and how your libc reacts to it. The C standard says it's
> undefined behaviour to mempcy with overlapping regions.
>
> I can't find memcpy in QListData::insert, but it does call append() and
> QListData::append does have a memcpy.
>
> I've just sent a patch to be applied to fix this. You don't need to report a
> bug.
>
>
Same error at QListData::remove(int)
Source and destination overlap in memcpy(0xa844cb0, 0xa844ca8, 16)
in LineasModel::removeRows(int, int, QModelIndex const&) in
lineasmodel.cpp:333
1: memcpy in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so
2: QListData::remove(int) in /usr/lib/libQtCore.so.4.7.3
3: QList<LineaModelStruct>::takeAt(int) in <a
href="file:///usr/include/QtCore/qlist.h:474" >/usr/include/QtCore/qlist.h:474</a>
4: LineasModel::removeRows(int, int, QModelIndex const&) in <a
href="file:///home/skuda/git/pda_almacen/lineasmodel.cpp:333"
>lineasmodel.cpp:333</a>
5: QAbstractItemModel::removeRow(int, QModelIndex const&) in <a
href="file:///usr/include/QtCore/qabstractitemmodel.h:315"
>/usr/include/QtCore/qabstractitemmodel.h:315</a>
6: LineasModel::setData(QModelIndex const&, QVariant const&, int) in
<a href="file:///home/skuda/git/pda_almacen/lineasmodel.cpp:255"
>lineasmodel.cpp:255</a>
7: QStyledItemDelegate::setModelData(QWidget*, QAbstractItemModel*,
QModelIndex const&) const in /usr/lib/libQtGui.so.4.7.3
8: QAbstractItemView::commitData(QWidget*) in /usr/lib/libQtGui.so.4.7.3
9: QAbstractItemView::qt_metacall(QMetaObject::Call, int, void**) in
/usr/lib/libQtGui.so.4.7.3
10: QTableView::qt_metacall(QMetaObject::Call, int, void**) in
/usr/lib/libQtGui.so.4.7.3
11: QMetaObject::activate(QObject*, QMetaObject const*, int, void**) in
/usr/lib/libQtCore.so.4.7.3
12: QAbstractItemDelegate::commitData(QWidget*) in /usr/lib/libQtGui.so.4.7.3
13: QStyledItemDelegate::qt_metacall(QMetaObject::Call, int, void**) in
/usr/lib/libQtGui.so.4.7.3
14: LineasDelegate::qt_metacall(QMetaObject::Call, int, void**) in <a
href="file:///home/skuda/git/pda_almacen/moc_lineasdelegate.cpp:67"
>moc_lineasdelegate.cpp:67</a>
15: QObject::event(QEvent*) in /usr/lib/libQtCore.so.4.7.3
16: QApplicationPrivate::notify_helper(QObject*, QEvent*) in
/usr/lib/libQtGui.so.4.7.3
17: QApplication::notify(QObject*, QEvent*) in /usr/lib/libQtGui.so.4.7.3
18: QCoreApplication::notifyInternal(QObject*, QEvent*) in
/usr/lib/libQtCore.so.4.7.3
19: QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) in
/usr/lib/libQtCore.so.4.7.3
20: /usr/lib/libQtCore.so.4.7.3
21: g_main_context_dispatch in /usr/lib/libglib-2.0.so.0.2800.8
22: /usr/lib/libglib-2.0.so.0.2800.8
23: g_main_context_iteration in /usr/lib/libglib-2.0.so.0.2800.8
24:
QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
in /usr/lib/libQtCore.so.4.7.3
25:
QGuiEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
in /usr/lib/libQtGui.so.4.7.3
More information about the Qt-interest-old
mailing list