From: Braden M. <br...@us...> - 2007-02-06 04:47:46
|
Update of /cvsroot/openvrml/openvrml/src/openvrml-player In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv18261/src/openvrml-player Modified Files: Tag: OpenVRML-0_16-BRANCH player.cpp Log Message: Don't bail early if curl_multi_fdset returns -1; we need to call g_source_remove_poll on outstanding file descriptors in this case. Index: player.cpp =================================================================== RCS file: /cvsroot/openvrml/openvrml/src/openvrml-player/player.cpp,v retrieving revision 1.1.2.4 retrieving revision 1.1.2.5 diff -C2 -d -r1.1.2.4 -r1.1.2.5 *** player.cpp 5 Feb 2007 04:41:53 -0000 1.1.2.4 --- player.cpp 6 Feb 2007 04:47:37 -0000 1.1.2.5 *************** *** 375,393 **** } ! if (curl_source.max_fd < 0) { return; } ! ! // ! // Resize the list of fds to be polled; initialize any new entries. ! // ! const poll_fds_t::size_type prev_size = curl_source.poll_fds->size(); ! curl_source.poll_fds->resize(curl_source.max_fd + 1); ! if (curl_source.poll_fds->size() > prev_size) { ! poll_fds_t::iterator pos = curl_source.poll_fds->begin(); ! std::advance(pos, prev_size); ! for (gint fd = prev_size; pos != curl_source.poll_fds->end(); ! ++pos, ++fd) { ! pos->fd = fd; ! pos->events = 0; ! pos->revents = 0; } } --- 375,395 ---- } ! if (curl_source.max_fd >= 0) { ! // ! // Resize the list of fds to be polled; initialize any new ! // entries. ! // ! const poll_fds_t::size_type prev_size = ! curl_source.poll_fds->size(); ! curl_source.poll_fds->resize(curl_source.max_fd + 1); ! if (curl_source.poll_fds->size() > prev_size) { ! poll_fds_t::iterator pos = curl_source.poll_fds->begin(); ! std::advance(pos, prev_size); ! for (gint fd = prev_size; pos != curl_source.poll_fds->end(); ! ++pos, ++fd) { ! pos->fd = fd; ! pos->events = 0; ! pos->revents = 0; ! } } } |