cURL / Mailing Lists / curl-library / Single Mail

curl-library

Re: multi interface + writeDataCallback doesn't work on win32 !

From: Daniel Stenberg <daniel-curl_at_haxx.se>
Date: Wed, 26 May 2004 14:16:52 +0200 (CEST)

On Wed, 26 May 2004, Stefan Libcurl wrote:

> >What libcurl version on what operating system?
>
> I used the curl_version_info() function to get informations.
>
> libcurl version: 7.11.1
> host: i386-pc-win32

This version of libcurl has the multi interface problem you mention. It makes
select() return -1 at times. You should either upgrade your libcurl or work
around the case when curl_multi_fdset() sets no file descriptor at all.

> At the end of the program. It's called from curl_easy_cleanup(http_handle);.
> That's ok. Otherwise there are no other calls of my_trace().

Nope, you fail already in the name resolve phase.

> Yes, I used curl_multi_info_read(). I call this function between:
>
> ...
> while(CURLM_CALL_MULTI_PERFORM == curl_multi_perform(multi_handle,
> &still_running))
>
> /* read informations */
> curlMsg = curl_multi_info_read(multi_handle, &numbers);
> if (curlMsg)
> {
> if (CURLMSG_DONE == curlMsg->msg)
> {
> printf("curl_multi_info_read() results:\n");
> printf(" result = %d", curlMsg->data);

That last line should be using 'curlMsg->data.result' as 'data' is a union
with two different members.

> But curl_multi_info_read() returns always NULL. Also when I places the
> funtion at the end of your code.

That is strange. But we now know what your original problem is.

-- 
     Daniel Stenberg -- http://curl.haxx.se -- http://daniel.haxx.se
      Dedicated custom curl help for hire: http://haxx.se/curl.html
Received on 2004-05-26