• Joe Downing's avatar
    [Windows Host] Fixing a crash related to touch injection · d7e58ca4
    Joe Downing authored
    This crash is an odd one as we only have an optimized stack trace and limited
    info since it is from a mini dump.  From best I can tell, this crash is due
    to a race condition in the start-up path for the desktop process.  In the dump,
    I see the other capturers all being initialized on the other threads so this
    is very early on.  It occurs because the start and inject methods related to
    Touch are run on different threads.  I looked into sorting that out but it is
    a bigger refactor than I would like to do at the moment (there are several
    classes and three threads to sort out).
    
    This fix ensures that the InputInjectorWin instance always has a valid
    TouchInjectorWin object to call into, even if the touch class has not
    been initialized yet (it is likely deferred due to the time and the fact
    that we need to load a library from disk).
    
    BUG=869990
    
    Change-Id: Ic408c534e8ee71f4aa9e712f5ffb415ff97222c6
    Reviewed-on: https://chromium-review.googlesource.com/1159168Reviewed-by: default avatarJamie Walch <jamiewalch@chromium.org>
    Commit-Queue: Joe Downing <joedow@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#579932}
    d7e58ca4
touch_injector_win.cc 11.2 KB