From dabda684b8fa47c58e62069241b4f3bdf2559669 Mon Sep 17 00:00:00 2001 From: Dale Glass Date: Thu, 26 Dec 2019 00:23:05 +0100 Subject: [PATCH] Don't bind action if QML menu can't be added. Otherwise eventually methods will be called on a NULL pointer. Fixes crash related to QMetaObject::invokeMethod. --- libraries/ui/src/VrMenu.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/libraries/ui/src/VrMenu.cpp b/libraries/ui/src/VrMenu.cpp index 12cb7e2e4b..867302d955 100644 --- a/libraries/ui/src/VrMenu.cpp +++ b/libraries/ui/src/VrMenu.cpp @@ -269,7 +269,11 @@ void VrMenu::insertAction(QAction* before, QAction* action) { Q_ASSERT(invokeResult); QObject* result = reinterpret_cast(returnedValue); // returnedValue.value(); Q_ASSERT(result); - bindActionToQmlAction(result, action, _rootMenu); + if ( result ) { + bindActionToQmlAction(result, action, _rootMenu); + } else { + qWarning() << "Failed to find addItem() method in object " << menu << ". Not inserting action " << action; + } } class QQuickMenuBase;