diff options
author | Reinhard Nißl <rnissl@gmx.de> | 2010-07-12 20:24:39 +0200 |
---|---|---|
committer | Reinhard Nißl <rnissl@gmx.de> | 2010-07-12 20:24:39 +0200 |
commit | 8b33d4f0954f119a2e067b47deac26cf84f9be70 (patch) | |
tree | 92603eff351237043a15b7dbdd3fd4e8dde69645 /win32 | |
parent | d5f82f868ac79df8b1e60499717a0e274e9c15ad (diff) | |
download | xine-lib-8b33d4f0954f119a2e067b47deac26cf84f9be70.tar.gz xine-lib-8b33d4f0954f119a2e067b47deac26cf84f9be70.tar.bz2 |
Avoid X11 error bad drawable when drawable changes while displaying.
At least two threads operate on the drawable -- the video output thread and
the xine-ui gui thread. When xine-ui changes the drawable while the output
thread is displaying a frame it is likely that the video output thread
triggers the X11 error bad drawable. Usually XLockDisplay() is used to
synchronize these threads but it causes too much impact and should only be
used to implement short atomic operations. In this case scheduling two
fields of a frame for displaying may take at least one field duration which
is quite a long time. Therefore a separate mutex is used for synchronizing
those threads.
Diffstat (limited to 'win32')
0 files changed, 0 insertions, 0 deletions