SparseRacer is a race detection technique for event-driven C/C++ programs that use programmatic event loops in addition to the default event loop.
In our experiments, SparseRacer could find new and harmful bugs in some Qt-based popular Linux applications. These can cause use-after-free crashes and may have potential bearing on security. We reported them to the developers and many of them are confirmed as valid bugs and some are even fixed. See the table below for the bugs discovered by SparseRacer and their status. When multiple bugs are reported together, we distinguish them by appending (a), (b), etc. to the URL.
Publication: Anirudh Santhiar, Shalini Kaleeswaran, Aditya Kanade Efficient race detection in the presence of programmatic event loops 25th ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA), 2016.
This work is partially supported by a faculty award from Mozilla Corporation and an IBM PhD Fellowship.