From 1437b421a29e361d3669e5c27ae22906efbd0832 Mon Sep 17 00:00:00 2001 From: Roland Knall Date: Tue, 26 Jun 2018 10:57:50 -0700 Subject: [PATCH] Qt: Fix crash when starting to drag on the wrong position When dragging on the wrong position in the toolbar, wireshark crashes Change-Id: I756e9caebc844d32e99e9fd3e338a872986b9e96 Reviewed-on: https://code.wireshark.org/review/28458 Petri-Dish: Roland Knall Tested-by: Petri Dish Buildbot Reviewed-by: Roland Knall --- ui/qt/widgets/drag_drop_toolbar.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ui/qt/widgets/drag_drop_toolbar.cpp b/ui/qt/widgets/drag_drop_toolbar.cpp index 2699d09759..a6458d8a1f 100644 --- a/ui/qt/widgets/drag_drop_toolbar.cpp +++ b/ui/qt/widgets/drag_drop_toolbar.cpp @@ -115,6 +115,9 @@ bool DragDropToolBar::eventFilter(QObject * obj, QEvent * event) if ( ( ev->buttons() & Qt::LeftButton ) && (ev->pos() - dragStartPosition).manhattanLength() > QApplication::startDragDistance()) { + if ( ! qobject_cast(elem) || ! elem->property(drag_drop_toolbar_action_).isValid() ) + return QToolBar::eventFilter(obj, event); + ToolbarEntryMimeData * temd = new ToolbarEntryMimeData(((QToolButton *)elem)->text(), elem->property(drag_drop_toolbar_action_).toInt()); DragLabel * lbl = new DragLabel(temd->labelText(), this);