X-Git-Url: http://git.tuebingen.mpg.de/?a=blobdiff_plain;f=vss.c;h=a7542677249e14ad71182d8d276c55177e1c0ca7;hb=e67fbcaf61d3d0f3ce62332f9615e5ed8e5a1c81;hp=1be4cd15d1db262dd5f79a43b19e7bba09f2087a;hpb=04a8d064400936dc6ecd3b137397cb2ce2cc25d7;p=paraslash.git diff --git a/vss.c b/vss.c index 1be4cd15..a7542677 100644 --- a/vss.c +++ b/vss.c @@ -295,7 +295,8 @@ struct timeval *vss_preselect(fd_set *rfds, fd_set *wfds, int *max_fileno) else { if (vss_next()) { vss_eof(); - return vss_compute_timeout(); + tv = vss_compute_timeout(); + goto out; } } if (vss_paused() || vss_repos()) { @@ -317,16 +318,16 @@ struct timeval *vss_preselect(fd_set *rfds, fd_set *wfds, int *max_fileno) } tv = vss_compute_timeout(); if (tv) - return tv; + goto out; if (!map && vss_playing() && !(mmd->new_vss_status_flags & VSS_NOMORE)) { - if (afsss == AFS_SOCKET_READY || - afsss == AFS_SOCKET_CHECK_FOR_WRITE) { + if (afsss != AFS_SOCKET_AFD_PENDING) { PARA_DEBUG_LOG("ready and playing, but no audio file\n"); para_fd_set(afs_socket, wfds, max_fileno); afsss = AFS_SOCKET_CHECK_FOR_WRITE; } } +out: return tv; }