• dscho's avatar
    Fix a locking problem in libvncserver · 61cd498f
    dscho authored
    There seems to be a locking problem in libvncserver, with respect to how
    condition variables are used.
    
    On certain machines in our lab, when using a vncviewer to view a display
    that has a very high rate of updates, we will occasionally see the VNC
    server process crash.  In one stack trace that was obtained, an assertion
    had tripped in glibc's pthread_cond_wait, which was called from
    clientOutput.
    
    Inspection of clientOutput suggests that WAIT is being called incorrectly.
    The mutex that protects a condition variable should always be locked when
    calling wait, and on return from the wait will still be locked.  The
    attached patch fixes the locking around this condition variable, and one
    other that I found by grepping the source for similar occurrences.
    Signed-off-by: 's avatarCharles Coffing <ccoffing@novell.com>
    61cd498f
Name
Last commit
Last update
VisualNaCro Loading commit data...
classes Loading commit data...
client_examples Loading commit data...
contrib Loading commit data...
examples Loading commit data...
libvncclient Loading commit data...
libvncserver Loading commit data...
rfb Loading commit data...
test Loading commit data...
vncterm Loading commit data...
x11vnc Loading commit data...
.cvsignore Loading commit data...
AUTHORS Loading commit data...
COPYING Loading commit data...
ChangeLog Loading commit data...
INSTALL Loading commit data...
LibVNCServer.spec.in Loading commit data...
Makefile.am Loading commit data...
NEWS Loading commit data...
README Loading commit data...
README.cvs Loading commit data...
TODO Loading commit data...
acinclude.m4 Loading commit data...
autogen.sh Loading commit data...
bdf2c.pl Loading commit data...
configure.ac Loading commit data...
consolefont2c.pl Loading commit data...
cvs_update_anonymously Loading commit data...
index.html Loading commit data...
libvncserver-config.in Loading commit data...
libvncserver.dsp Loading commit data...
libvncserver.dsw Loading commit data...
prepare_x11vnc_dist.sh Loading commit data...
success.html Loading commit data...
tightvnc-1.3dev5-vncviewer-alpha-cursor.patch Loading commit data...