My application uses QT and CEF framework, maybe there is some place did not manage the memory, but I want to know how I should locate and troubleshoot such a problem.
I can't tell you how this will translate into your applications logic but, after a great deal of work mangling the crash log*, I can tell you exactly what's crashing.
*As an aside, one of the reasons we specifically ask for "Apple crash logs" is that, by their nature, any crash tools I've worked with is EXTREMELY "picky" about the precise details of how the text is formatted, failing if those details aren't exactly as it expects. As you'd expect, Apple has tools that can trace a log back to the exact line that's crashing, but it expect those logs to be formatted "correctly". Working with a non-Apple log means picking apart the altered log to figure exactly what's "wrong" and then adjusting it to get it working, which is tedious and time consuming.
In any case, NSEvent has a property "coalescedTouchesForTouch" which returns the set of touch points connected to a "main" touch. The array that property returns is eventually released when NSEvent dealloc's and that array object is what's then crashing.
How that occurred is not a question I can really answer. The only direct access you have to that object is the copy returned by "coalescedTouchesForTouch", however, that's a copy of an NSArray (immutable) which means it was "copied" using retain, not by duplicating the full object. Assuming it's overrelease issue, then that means the original issue could have occurred at a much earlier point but wasn't visible until the retain count eventually hit "0". Of course, it's also possible the event object was actually damaged by unrelated activity (like a buffer overrun).
__
Kevin Elliott
DTS Engineer, CoreOS/Hardware