Commit Graph

8 Commits

Author SHA1 Message Date
Marc-André Moreau
d4c809c4ae winpr: fix definitions of synchronization barrier and interlocked functions 2016-05-11 13:12:44 -04:00
Jakub Adam
73888a57c2 Ensure threads have finished using a barrier before releasing it
MSDN documentation says it is ensured that all threads in the barrier
have finished using it before allowing the barrier to be released in
DeleteSynchronizationBarrier(). The winpr re-implementation wasn't
keeping to that requirement, which was causing occasional crashes
when shadow client tried to access already freed barrier structure.

The crash was occuring in winpr_Handle_cleanup() after finished
waiting on a barrier's event.
2015-05-22 13:36:15 +02:00
Marc-André Moreau
90d202ab87 server: fix build on Windows 2014-08-11 19:31:38 -04:00
Marc-André Moreau
6c85505ecc libwinpr-synch: replace pthreads-based barrier implementation by interlocked operations + event and avoid deadlocks 2014-08-08 21:02:15 -04:00
Marc-André Moreau
54264936d1 shadow: improve synchronization barrier usage 2014-08-08 20:51:26 -04:00
Marc-André Moreau
edde16e9d5 libwinpr-synch: add initial synchronization barrier implementation 2014-08-08 17:34:30 -04:00
Marc-André Moreau
4bd217055c libwinpr-synch: implemented Win32 Events 2012-09-18 18:36:13 -04:00
Marc-André Moreau
deec68be19 libwinpr-synch: stubbed larger portions of the Synchronization API 2012-09-18 12:57:19 -04:00