summaryrefslogtreecommitdiffstats
path: root/src/widgets
diff options
context:
space:
mode:
authorMarc Mutz <marc.mutz@kdab.com>2017-12-17 11:42:41 +0100
committerMarc Mutz <marc.mutz@kdab.com>2017-12-18 13:06:33 +0000
commitb0938cb6c1fa29ec2d2a4fb9273e515cd0d6c08e (patch)
tree91b98de0f37f13df03834766cfab4b42c06f734c /src/widgets
parent0857db89bf2d36a1501c708521daacdbc83d5c5b (diff)
QGestureManager: fix UB (invalid pointer comparison)
Comparing pointers with op< that do not point into the same array is UB. Fix, in the usual way, by using std::less. Change-Id: Id2c957557719887b2016632d683dbab8af07b34c Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'src/widgets')
-rw-r--r--src/widgets/kernel/qgesturemanager_p.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/widgets/kernel/qgesturemanager_p.h b/src/widgets/kernel/qgesturemanager_p.h
index e57652afba..3df80bab55 100644
--- a/src/widgets/kernel/qgesturemanager_p.h
+++ b/src/widgets/kernel/qgesturemanager_p.h
@@ -59,6 +59,8 @@
#ifndef QT_NO_GESTURES
+#include <functional>
+
QT_BEGIN_NAMESPACE
class QBasicTimer;
@@ -112,7 +114,7 @@ private:
ObjectGesture(QObject *o, const Qt::GestureType &g) : object(o), gesture(g) { }
inline bool operator<(const ObjectGesture &rhs) const
{
- if (object < rhs.object)
+ if (std::less<QObject *>{}(object, rhs.object))
return true;
if (object == rhs.object)
return gesture < rhs.gesture;