mirror of
https://github.com/debauchee/barrier.git
synced 2024-12-22 10:31:45 +03:00
7b3999b166
warp the mouse to the primary screen. entering the primary screen causes the primary screen's window to be hidden. the deadlock occurs because hiding the window seems to post a message then wait for it to be handled (or possibly it won't send a message while a posted message is being handled). thread A locks the mutex, warps the mouse, the hides the window. thread B begins processing the mouse warp then tries to lock the mutex. thread A is waiting on the event loop owned by B while B is waiting on the mutex owned by A. this fix simply hides the window asynchronously. however, there may be other ways to cause a similar deadlock that have not been found. |
||
---|---|---|
.. | ||
CClientProxy1_0.cpp | ||
CClientProxy1_0.h | ||
CClientProxy.cpp | ||
CClientProxy.h | ||
CConfig.cpp | ||
CConfig.h | ||
CHTTPServer.cpp | ||
CHTTPServer.h | ||
CMSWindowsPrimaryScreen.cpp | ||
CMSWindowsPrimaryScreen.h | ||
CPrimaryClient.cpp | ||
CPrimaryClient.h | ||
CPrimaryScreen.cpp | ||
CPrimaryScreen.h | ||
CServer.cpp | ||
CServer.h | ||
CXWindowsPrimaryScreen.cpp | ||
CXWindowsPrimaryScreen.h | ||
IPrimaryScreenFactory.h | ||
Makefile.am | ||
server.dsp |