Details
-
Bug
-
Resolution: Done
-
P2: Important
-
Qt Creator 3.2.0-beta1
-
None
-
919f26a488c76afea081d1d11948f30a6f90a1b3 817d02d11385a06e9b964cf7eef4004e112b66d8 329952f5ee792484bdb53141fcfb3dba15f05a60
Description
In these classes, a Qt::DirectConnection is created to signals of the C++ and QmlJs code models, respectively, and in the associated slots API functions from other plugins are called, e.g. ProjectExplorer::Project::files(). This is seriously wrong, as these functions are not thread-safe. Not surprisingly, crashes due to this code have been observed.
Unfortunately, the fix is not trivial, as a QueuedConnection also results in a crash, presumably because the TODO plugin calls back on the code models with the assumption that they are in the exact same state in which they emitted the signal.