Details
-
Bug
-
Resolution: Fixed
-
P2: Important
-
5.5.0
-
None
-
Source code inspection
-
29a7489769bca59630782061789561fb07d77892 c5792dcfd6 (qt/tqtc-qtbase/dev) 32b278b13b (qt/qtbase/6.2.4) 32b278b13b (qt/tqtc-qtbase/6.2.4)
Description
I have an scientific application and enabled floating point exceptions. This results in drag&drop operations (at least in my treeview) always giving a floating point invalid-operation exception in line 207 of qtbase/src/gui/kernel/qsimpledrag.cpp. The offending line is:
if (pos.x() == int(qInf())) { ... }
that is a conversion of floating point +INFINITY to int, which is I believe is Undefined Behaviour.
(grepping out of curiousity shows that the same dubious construct is also used in ./qtquickcontrols/src/controls/qquickmenu.cpp, line 405)
Attachments
Issue Links
- is duplicated by
-
QTBUG-99056 FPE on unknown adreess with ASAN during drag and drop
- Closed
- relates to
-
QTBUG-45045 SIGFPE in QQuickMenu
- Closed
-
QTBUG-69433 Support multiple seats (several users with separate screens/mice/keyboards)
- Reported
-
QTBUG-52430 support multiple pointing device cursors in Qt 6
- Reported
-
QTBUG-69167 Floating point exception in QPointF::toPoint() with qInf()s
- Closed
-
QTBUG-61783 SwipeDelegate left and right components not reacting on touchscreen press
- Closed