==38635== Memcheck, a memory error detector ==38635== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==38635== Using Valgrind-3.18.1 and LibVEX; rerun with -h for copyright info ==38635== Command: qtbug104608_64/qtbug104608 ==38635== Qt 6.4.0 (x86_64-little_endian-lp64 shared (dynamic) debug build; by GCC 11.2.0) >app.exec operator() > Menu is destroyed operator() < ==38635== Invalid write of size 1 ==38635== at 0x4D07EA3: QBoolBlocker::~QBoolBlocker() (qobject_p.h:420) ==38635== by 0x4CFE0BC: QMenuPrivate::activateCausedStack(QList > const&, QAction*, QAction::ActionEvent, bool) (qmenu.cpp:1409) ==38635== by 0x4CFE3A4: QMenuPrivate::activateAction(QAction*, QAction::ActionEvent, bool) (qmenu.cpp:1461) ==38635== by 0x4D0320D: QMenu::mouseReleaseEvent(QMouseEvent*) (qmenu.cpp:2886) ==38635== by 0x4A92095: QWidget::event(QEvent*) (qwidget.cpp:8813) ==38635== by 0x4D03C4D: QMenu::event(QEvent*) (qmenu.cpp:3011) ==38635== by 0x4A011BB: QApplicationPrivate::notify_helper(QObject*, QEvent*) (qapplication.cpp:3305) ==38635== by 0x49FEE6C: QApplication::notify(QObject*, QEvent*) (qapplication.cpp:2794) ==38635== by 0x6235766: QCoreApplication::notifyInternal2(QObject*, QEvent*) (qcoreapplication.cpp:1026) ==38635== by 0x6236394: QCoreApplication::sendSpontaneousEvent(QObject*, QEvent*) (qcoreapplication.cpp:1456) ==38635== by 0x49FD917: QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer&, bool, bool) (qapplication.cpp:2378) ==38635== by 0x4AC6513: QWidgetWindow::handleMouseEvent(QMouseEvent*) (qwidgetwindow.cpp:519) ==38635== Address 0x9fa80b8 is 1,000 bytes inside a block of size 1,008 free'd ==38635== at 0x484BB6F: operator delete(void*, unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==38635== by 0x4D0919C: QMenuPrivate::~QMenuPrivate() (qmenu_p.h:295) ==38635== by 0x62D1EFF: QScopedPointerDeleter::cleanup(QObjectData*) (qscopedpointer.h:24) ==38635== by 0x62CE80A: QScopedPointer >::~QScopedPointer() (qscopedpointer.h:80) ==38635== by 0x62BF3E5: QObject::~QObject() (qobject.cpp:1310) ==38635== by 0x4A7BAE2: QWidget::~QWidget() (qwidget.cpp:1555) ==38635== by 0x4CFF0F1: QMenu::~QMenu() (qmenu.cpp:1756) ==38635== by 0x4CFF131: QMenu::~QMenu() (qmenu.cpp:1756) ==38635== by 0x62C90FC: qDeleteInEventHandler(QObject*) (qobject.cpp:5046) ==38635== by 0x62BF88F: QObject::event(QEvent*) (qobject.cpp:1567) ==38635== by 0x4A939B4: QWidget::event(QEvent*) (qwidget.cpp:9243) ==38635== by 0x4D03C4D: QMenu::event(QEvent*) (qmenu.cpp:3011) ==38635== Block was alloc'd at ==38635== at 0x4849013: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==38635== by 0x4CFEDFE: QMenu::QMenu(QWidget*) (qmenu.cpp:1705) ==38635== by 0x10A824: main (main.cpp:9) ==38635== ==38635== Invalid read of size 8 ==38635== at 0x4A171F3: void qt_ptr_swap(QtSharedPointer::ExternalRefCountData*&, QtSharedPointer::ExternalRefCountData*&) (qglobal.h:1076) ==38635== by 0x4A12DE8: QWeakPointer::swap(QWeakPointer&) (qsharedpointer_impl.h:580) ==38635== by 0x4A0EFAA: QWeakPointer::operator=(QWeakPointer&&) (qsharedpointer_impl.h:553) ==38635== by 0x4A0B9BE: QWeakPointer& QWeakPointer::assign(QObject*) (qsharedpointer_impl.h:662) ==38635== by 0x4BBB900: QPointer::operator=(QAction*) (qpointer.h:38) ==38635== by 0x4CFE45D: QMenuPrivate::activateAction(QAction*, QAction::ActionEvent, bool) (qmenu.cpp:1475) ==38635== by 0x4D0320D: QMenu::mouseReleaseEvent(QMouseEvent*) (qmenu.cpp:2886) ==38635== by 0x4A92095: QWidget::event(QEvent*) (qwidget.cpp:8813) ==38635== by 0x4D03C4D: QMenu::event(QEvent*) (qmenu.cpp:3011) ==38635== by 0x4A011BB: QApplicationPrivate::notify_helper(QObject*, QEvent*) (qapplication.cpp:3305) ==38635== by 0x49FEE6C: QApplication::notify(QObject*, QEvent*) (qapplication.cpp:2794) ==38635== by 0x6235766: QCoreApplication::notifyInternal2(QObject*, QEvent*) (qcoreapplication.cpp:1026) ==38635== Address 0x9fa8078 is 936 bytes inside a block of size 1,008 free'd ==38635== at 0x484BB6F: operator delete(void*, unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==38635== by 0x4D0919C: QMenuPrivate::~QMenuPrivate() (qmenu_p.h:295) ==38635== by 0x62D1EFF: QScopedPointerDeleter::cleanup(QObjectData*) (qscopedpointer.h:24) ==38635== by 0x62CE80A: QScopedPointer >::~QScopedPointer() (qscopedpointer.h:80) ==38635== by 0x62BF3E5: QObject::~QObject() (qobject.cpp:1310) ==38635== by 0x4A7BAE2: QWidget::~QWidget() (qwidget.cpp:1555) ==38635== by 0x4CFF0F1: QMenu::~QMenu() (qmenu.cpp:1756) ==38635== by 0x4CFF131: QMenu::~QMenu() (qmenu.cpp:1756) ==38635== by 0x62C90FC: qDeleteInEventHandler(QObject*) (qobject.cpp:5046) ==38635== by 0x62BF88F: QObject::event(QEvent*) (qobject.cpp:1567) ==38635== by 0x4A939B4: QWidget::event(QEvent*) (qwidget.cpp:9243) ==38635== by 0x4D03C4D: QMenu::event(QEvent*) (qmenu.cpp:3011) ==38635== Block was alloc'd at ==38635== at 0x4849013: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==38635== by 0x4CFEDFE: QMenu::QMenu(QWidget*) (qmenu.cpp:1705) ==38635== by 0x10A824: main (main.cpp:9) ==38635== ==38635== Invalid write of size 8 ==38635== at 0x4A17205: void qt_ptr_swap(QtSharedPointer::ExternalRefCountData*&, QtSharedPointer::ExternalRefCountData*&) (qglobal.h:1077) ==38635== by 0x4A12DE8: QWeakPointer::swap(QWeakPointer&) (qsharedpointer_impl.h:580) ==38635== by 0x4A0EFAA: QWeakPointer::operator=(QWeakPointer&&) (qsharedpointer_impl.h:553) ==38635== by 0x4A0B9BE: QWeakPointer& QWeakPointer::assign(QObject*) (qsharedpointer_impl.h:662) ==38635== by 0x4BBB900: QPointer::operator=(QAction*) (qpointer.h:38) ==38635== by 0x4CFE45D: QMenuPrivate::activateAction(QAction*, QAction::ActionEvent, bool) (qmenu.cpp:1475) ==38635== by 0x4D0320D: QMenu::mouseReleaseEvent(QMouseEvent*) (qmenu.cpp:2886) ==38635== by 0x4A92095: QWidget::event(QEvent*) (qwidget.cpp:8813) ==38635== by 0x4D03C4D: QMenu::event(QEvent*) (qmenu.cpp:3011) ==38635== by 0x4A011BB: QApplicationPrivate::notify_helper(QObject*, QEvent*) (qapplication.cpp:3305) ==38635== by 0x49FEE6C: QApplication::notify(QObject*, QEvent*) (qapplication.cpp:2794) ==38635== by 0x6235766: QCoreApplication::notifyInternal2(QObject*, QEvent*) (qcoreapplication.cpp:1026) ==38635== Address 0x9fa8078 is 936 bytes inside a block of size 1,008 free'd ==38635== at 0x484BB6F: operator delete(void*, unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==38635== by 0x4D0919C: QMenuPrivate::~QMenuPrivate() (qmenu_p.h:295) ==38635== by 0x62D1EFF: QScopedPointerDeleter::cleanup(QObjectData*) (qscopedpointer.h:24) ==38635== by 0x62CE80A: QScopedPointer >::~QScopedPointer() (qscopedpointer.h:80) ==38635== by 0x62BF3E5: QObject::~QObject() (qobject.cpp:1310) ==38635== by 0x4A7BAE2: QWidget::~QWidget() (qwidget.cpp:1555) ==38635== by 0x4CFF0F1: QMenu::~QMenu() (qmenu.cpp:1756) ==38635== by 0x4CFF131: QMenu::~QMenu() (qmenu.cpp:1756) ==38635== by 0x62C90FC: qDeleteInEventHandler(QObject*) (qobject.cpp:5046) ==38635== by 0x62BF88F: QObject::event(QEvent*) (qobject.cpp:1567) ==38635== by 0x4A939B4: QWidget::event(QEvent*) (qwidget.cpp:9243) ==38635== by 0x4D03C4D: QMenu::event(QEvent*) (qmenu.cpp:3011) ==38635== Block was alloc'd at ==38635== at 0x4849013: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==38635== by 0x4CFEDFE: QMenu::QMenu(QWidget*) (qmenu.cpp:1705) ==38635== by 0x10A824: main (main.cpp:9) ==38635== ==38635== Invalid read of size 8 ==38635== at 0x4A1722A: void qt_ptr_swap(QObject*&, QObject*&) (qglobal.h:1076) ==38635== by 0x4A12E03: QWeakPointer::swap(QWeakPointer&) (qsharedpointer_impl.h:581) ==38635== by 0x4A0EFAA: QWeakPointer::operator=(QWeakPointer&&) (qsharedpointer_impl.h:553) ==38635== by 0x4A0B9BE: QWeakPointer& QWeakPointer::assign(QObject*) (qsharedpointer_impl.h:662) ==38635== by 0x4BBB900: QPointer::operator=(QAction*) (qpointer.h:38) ==38635== by 0x4CFE45D: QMenuPrivate::activateAction(QAction*, QAction::ActionEvent, bool) (qmenu.cpp:1475) ==38635== by 0x4D0320D: QMenu::mouseReleaseEvent(QMouseEvent*) (qmenu.cpp:2886) ==38635== by 0x4A92095: QWidget::event(QEvent*) (qwidget.cpp:8813) ==38635== by 0x4D03C4D: QMenu::event(QEvent*) (qmenu.cpp:3011) ==38635== by 0x4A011BB: QApplicationPrivate::notify_helper(QObject*, QEvent*) (qapplication.cpp:3305) ==38635== by 0x49FEE6C: QApplication::notify(QObject*, QEvent*) (qapplication.cpp:2794) ==38635== by 0x6235766: QCoreApplication::notifyInternal2(QObject*, QEvent*) (qcoreapplication.cpp:1026) ==38635== Address 0x9fa8080 is 944 bytes inside a block of size 1,008 free'd ==38635== at 0x484BB6F: operator delete(void*, unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==38635== by 0x4D0919C: QMenuPrivate::~QMenuPrivate() (qmenu_p.h:295) ==38635== by 0x62D1EFF: QScopedPointerDeleter::cleanup(QObjectData*) (qscopedpointer.h:24) ==38635== by 0x62CE80A: QScopedPointer >::~QScopedPointer() (qscopedpointer.h:80) ==38635== by 0x62BF3E5: QObject::~QObject() (qobject.cpp:1310) ==38635== by 0x4A7BAE2: QWidget::~QWidget() (qwidget.cpp:1555) ==38635== by 0x4CFF0F1: QMenu::~QMenu() (qmenu.cpp:1756) ==38635== by 0x4CFF131: QMenu::~QMenu() (qmenu.cpp:1756) ==38635== by 0x62C90FC: qDeleteInEventHandler(QObject*) (qobject.cpp:5046) ==38635== by 0x62BF88F: QObject::event(QEvent*) (qobject.cpp:1567) ==38635== by 0x4A939B4: QWidget::event(QEvent*) (qwidget.cpp:9243) ==38635== by 0x4D03C4D: QMenu::event(QEvent*) (qmenu.cpp:3011) ==38635== Block was alloc'd at ==38635== at 0x4849013: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==38635== by 0x4CFEDFE: QMenu::QMenu(QWidget*) (qmenu.cpp:1705) ==38635== by 0x10A824: main (main.cpp:9) ==38635== ==38635== Invalid write of size 8 ==38635== at 0x4A1723C: void qt_ptr_swap(QObject*&, QObject*&) (qglobal.h:1077) ==38635== by 0x4A12E03: QWeakPointer::swap(QWeakPointer&) (qsharedpointer_impl.h:581) ==38635== by 0x4A0EFAA: QWeakPointer::operator=(QWeakPointer&&) (qsharedpointer_impl.h:553) ==38635== by 0x4A0B9BE: QWeakPointer& QWeakPointer::assign(QObject*) (qsharedpointer_impl.h:662) ==38635== by 0x4BBB900: QPointer::operator=(QAction*) (qpointer.h:38) ==38635== by 0x4CFE45D: QMenuPrivate::activateAction(QAction*, QAction::ActionEvent, bool) (qmenu.cpp:1475) ==38635== by 0x4D0320D: QMenu::mouseReleaseEvent(QMouseEvent*) (qmenu.cpp:2886) ==38635== by 0x4A92095: QWidget::event(QEvent*) (qwidget.cpp:8813) ==38635== by 0x4D03C4D: QMenu::event(QEvent*) (qmenu.cpp:3011) ==38635== by 0x4A011BB: QApplicationPrivate::notify_helper(QObject*, QEvent*) (qapplication.cpp:3305) ==38635== by 0x49FEE6C: QApplication::notify(QObject*, QEvent*) (qapplication.cpp:2794) ==38635== by 0x6235766: QCoreApplication::notifyInternal2(QObject*, QEvent*) (qcoreapplication.cpp:1026) ==38635== Address 0x9fa8080 is 944 bytes inside a block of size 1,008 free'd ==38635== at 0x484BB6F: operator delete(void*, unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==38635== by 0x4D0919C: QMenuPrivate::~QMenuPrivate() (qmenu_p.h:295) ==38635== by 0x62D1EFF: QScopedPointerDeleter::cleanup(QObjectData*) (qscopedpointer.h:24) ==38635== by 0x62CE80A: QScopedPointer >::~QScopedPointer() (qscopedpointer.h:80) ==38635== by 0x62BF3E5: QObject::~QObject() (qobject.cpp:1310) ==38635== by 0x4A7BAE2: QWidget::~QWidget() (qwidget.cpp:1555) ==38635== by 0x4CFF0F1: QMenu::~QMenu() (qmenu.cpp:1756) ==38635== by 0x4CFF131: QMenu::~QMenu() (qmenu.cpp:1756) ==38635== by 0x62C90FC: qDeleteInEventHandler(QObject*) (qobject.cpp:5046) ==38635== by 0x62BF88F: QObject::event(QEvent*) (qobject.cpp:1567) ==38635== by 0x4A939B4: QWidget::event(QEvent*) (qwidget.cpp:9243) ==38635== by 0x4D03C4D: QMenu::event(QEvent*) (qmenu.cpp:3011) ==38635== Block was alloc'd at ==38635== at 0x4849013: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==38635== by 0x4CFEDFE: QMenu::QMenu(QWidget*) (qmenu.cpp:1705) ==38635== by 0x10A824: main (main.cpp:9) ==38635== ==38635== Invalid read of size 4 ==38635== at 0x49F6165: fetch_sub (atomic_base.h:646) ==38635== by 0x49F6165: bool QAtomicOps::deref(std::atomic&) (qatomic_cxx11.h:265) ==38635== by 0x49F5EB1: QBasicAtomicInteger::deref() (qbasicatomic.h:66) ==38635== by 0x4A07F53: QWeakPointer::~QWeakPointer() (qsharedpointer_impl.h:543) ==38635== by 0x4A0EFBA: QWeakPointer::operator=(QWeakPointer&&) (qsharedpointer_impl.h:553) ==38635== by 0x4A0B9BE: QWeakPointer& QWeakPointer::assign(QObject*) (qsharedpointer_impl.h:662) ==38635== by 0x4BBB900: QPointer::operator=(QAction*) (qpointer.h:38) ==38635== by 0x4CFE45D: QMenuPrivate::activateAction(QAction*, QAction::ActionEvent, bool) (qmenu.cpp:1475) ==38635== by 0x4D0320D: QMenu::mouseReleaseEvent(QMouseEvent*) (qmenu.cpp:2886) ==38635== by 0x4A92095: QWidget::event(QEvent*) (qwidget.cpp:8813) ==38635== by 0x4D03C4D: QMenu::event(QEvent*) (qmenu.cpp:3011) ==38635== by 0x4A011BB: QApplicationPrivate::notify_helper(QObject*, QEvent*) (qapplication.cpp:3305) ==38635== by 0x49FEE6C: QApplication::notify(QObject*, QEvent*) (qapplication.cpp:2794) ==38635== Address 0xbf96f30 is 0 bytes inside a block of size 16 free'd ==38635== at 0x484B8AF: operator delete(void*) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==38635== by 0x553F640: QtSharedPointer::ExternalRefCountData::operator delete(void*) (qsharedpointer_impl.h:130) ==38635== by 0x55CA9B8: QWeakPointer::~QWeakPointer() (qsharedpointer_impl.h:543) ==38635== by 0x55C8F5F: QPointer::~QPointer() (qpointer.h:17) ==38635== by 0x5B01248: QAction::activate(QAction::ActionEvent) (qaction.cpp:1099) ==38635== by 0x4CFDF4E: QMenuPrivate::activateCausedStack(QList > const&, QAction*, QAction::ActionEvent, bool) (qmenu.cpp:1384) ==38635== by 0x4CFE3A4: QMenuPrivate::activateAction(QAction*, QAction::ActionEvent, bool) (qmenu.cpp:1461) ==38635== by 0x4D0320D: QMenu::mouseReleaseEvent(QMouseEvent*) (qmenu.cpp:2886) ==38635== by 0x4A92095: QWidget::event(QEvent*) (qwidget.cpp:8813) ==38635== by 0x4D03C4D: QMenu::event(QEvent*) (qmenu.cpp:3011) ==38635== by 0x4A011BB: QApplicationPrivate::notify_helper(QObject*, QEvent*) (qapplication.cpp:3305) ==38635== by 0x49FEE6C: QApplication::notify(QObject*, QEvent*) (qapplication.cpp:2794) ==38635== Block was alloc'd at ==38635== at 0x4849013: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==38635== by 0x647D367: QtSharedPointer::ExternalRefCountData::getAndRef(QObject const*) (qsharedpointer.cpp:1367) ==38635== by 0x4A0D5DB: QWeakPointer::QWeakPointer(QObject*, bool) (qsharedpointer_impl.h:666) ==38635== by 0x4A0B9AB: QWeakPointer& QWeakPointer::assign(QObject*) (qsharedpointer_impl.h:662) ==38635== by 0x4BBB900: QPointer::operator=(QAction*) (qpointer.h:38) ==38635== by 0x4CFE208: QMenuPrivate::activateAction(QAction*, QAction::ActionEvent, bool) (qmenu.cpp:1432) ==38635== by 0x4D0320D: QMenu::mouseReleaseEvent(QMouseEvent*) (qmenu.cpp:2886) ==38635== by 0x4A92095: QWidget::event(QEvent*) (qwidget.cpp:8813) ==38635== by 0x4D03C4D: QMenu::event(QEvent*) (qmenu.cpp:3011) ==38635== by 0x4A011BB: QApplicationPrivate::notify_helper(QObject*, QEvent*) (qapplication.cpp:3305) ==38635== by 0x49FEE6C: QApplication::notify(QObject*, QEvent*) (qapplication.cpp:2794) ==38635== by 0x6235766: QCoreApplication::notifyInternal2(QObject*, QEvent*) (qcoreapplication.cpp:1026) ==38635==