Details
-
Bug
-
Resolution: Duplicate
-
P2: Important
-
5.6.0
-
None
-
Ubuntu 16.04 64Bit with Qt 5.6 64Bit
-
fd207c06b81b12086bdf80e4fa7b393bf1f424d6
Description
QWaitCondition::wait has a unsigned long parameter for the timeout. The documentation said, that the thread will waitfor the condition at least this time (in milliseconds). But if you call this method with a value greater than INT32_MAX on a 64Bit machine (where unsigned long is 64 bits) the function will not wait the expected time. If you call it with INT32_MAX for example, the function will return immediately (with false).
The timeout parameter is internally converted into an int (which is 32 bit on a 64 machine). This results in a timeout of -1ms.
Attachments
Issue Links
- is duplicated by
-
QTBUG-56597 QWaitCondition::wait returns immediately with false on Linux if the timeout greather than INT32_MAX
- Closed