(trunk libT) #2416 "crash in event_queue_insert" -- I think this is happening if we queue up two changes, one to listen for read/write, and then a second one to delete the polling, in kqueue's event mechanism, at libcurl's request. Let's try disabling kqueue in libevent and use poll/select instead.

This commit is contained in:
Charles Kerr 2010-01-10 19:52:01 +00:00
parent da06bc054f
commit 2ac553361a
3 changed files with 4 additions and 7 deletions

View File

@ -345,11 +345,8 @@ sock_cb( CURL * e UNUSED, curl_socket_t fd, int curl_what,
if( ( io_event != NULL ) && ( curl_what & CURL_POLL_REMOVE ) )
{
CURLMcode m;
memset( io_event, TR_MEMORY_TRASH, sizeof( struct event ) );
tr_free( io_event );
m = curl_multi_assign( web->multi, fd, NULL );
assert( m == CURLM_OK );
/*fprintf( stderr, "-1 io_events to %d\n", --num_events );*/
}

View File

@ -50,7 +50,7 @@
#define HAVE_INTTYPES_H 1
/* Define to 1 if you have the `kqueue' function. */
#define HAVE_KQUEUE 1
/* #define HAVE_KQUEUE 1 */
/* Define to 1 if you have the `nsl' library (-lnsl). */
/* #undef HAVE_LIBNSL */
@ -194,7 +194,7 @@
#define HAVE_VASPRINTF 1
/* Define if kqueue works correctly with pipes */
#define HAVE_WORKING_KQUEUE 1
/* #define HAVE_WORKING_KQUEUE 1 */
/* Define to the sub-directory in which libtool stores uninstalled libraries.
*/

View File

@ -57,7 +57,7 @@
#define _EVENT_HAVE_INTTYPES_H 1
/* Define to 1 if you have the `kqueue' function. */
#define _EVENT_HAVE_KQUEUE 1
/* #define _EVENT_HAVE_KQUEUE 1 */
/* Define to 1 if you have the `nsl' library (-lnsl). */
/* #undef _EVENT_HAVE_LIBNSL */
@ -201,7 +201,7 @@
#define _EVENT_HAVE_VASPRINTF 1
/* Define if kqueue works correctly with pipes */
#define _EVENT_HAVE_WORKING_KQUEUE 1
/* #define _EVENT_HAVE_WORKING_KQUEUE 1 */
/* Define to the sub-directory in which libtool stores uninstalled libraries.
*/