Details
-
Bug
-
Resolution: Done
-
P3: Somewhat important
-
5.0.0 Beta 1
-
None
-
Windows 7
-
QtBase: c4109fe10370b7b27b22ddc9db4286db34ea9c4e, ActiveQt: fc209e432b3fa561969ccab37083aa5ee31b6a6d
Description
Qutlook example crashes when it initially shows the treeview. This happens because the Outlook COM component that is used will cause processing of queued Windows messages somewhere along the line when a method is invoked on it. If there is a WM_PAINT message in the queue at that time, it will be handled in Windows platform plugin and trigger a synchronous expose event handling, which in turn results in a paint. If the invoke is done in the middle of an existing paint operation, like in qutlook example, where rowCount and item data can be requested during a paint, the secondary paint triggered by WM_PAINT resets the state of raster paint engine, causing crash later when execution returns to the first interrupted paint.
Doing the the triggered expose asynchronously would fix it, but apparently that causes some other issues (071914232189735ae6475d44d07f11f90b4729a1).
Attachments
Issue Links
- is required for
-
QTBUG-24209 Qt 5.0 - Windows: Fix the QtActiveQt module
- Closed
For Gerrit Dashboard: QTBUG-27209 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
37990,5 | Fix crash when handling WM_PAINT during COM operations | master | qt/qtbase | Status: MERGED | +2 | 0 |
37991,4 | Fix crash when handling WM_PAINT during COM operations | master | qt/qtactiveqt | Status: MERGED | +2 | 0 |