Thanks Ray. I ran the console out test that you recommended and the error code went away. This is great as I now know the error message is benign. I’ll probably put in the WRITEFUNCTION and callback code to remove the error from my live app.
Many thanks as always for your response and solution. From: curl-library [mailto:[email protected]] On Behalf Of Ray Satiro via curl-library Sent: Thursday, February 19, 2015 11:24 PM To: [email protected] Subject: Re: CURL_EASY_PERFORM error but data transfer works On 2/19/2015 8:30 PM, Jon wrote: Thanks Ray for looking into this. I commented out all of the backend PHP stuff just to see if anything changed but still received the same error msg. (and things keep on working). I’ll turn on VERBOSE and see what occurs there. Note that I’m using build 7.39 via MSVC 11 on Windows 7 x64 as well. Back end Apache/Linux and PHP. Daniel, thanks as well. I will build a new project with just the simple HTTP post module and run it separately from my app. Will let you know how that goes. I have an idea what may be happening. I was able to reproduce when I targeted the GUI subsystem. I guessed since you used MessageBox instead of printf you may be targeting the GUI subsystem. If you have built an application for the GUI subsystem then by default you don't have a console or stdout. The easiest way to test this theory is to enable stdout fd by redirecting to a file. From the console run your app like this: app.exe > foo See if you still get that error. libcurl by default uses fwrite to stdout unless you have set your own write function. Since you are not interested in the response body you could use a write function that does nothing except return the bytes handled (all of them): size_t write_callback(char *ptr, size_t size, size_t nmemb, void *userdata) { return size * nmemb; } And in your curl_out function add: curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_callback); Now libcurl will use that function instead of fwrite to stdout. For more on CURLOPT_WRITEFUNCTION see [1]. Also note the libcurl tutorial [2] which says: "libcurl offers its own default internal callback that will take care of the data if you don't set the callback with CURLOPT_WRITEFUNCTION. It will then simply output the received data to stdout. You can have the default callback write the data to a different file handle by passing a 'FILE *' to a file opened for writing with the CURLOPT_WRITEDATA option. " [1]: http://curl.haxx.se/libcurl/c/CURLOPT_WRITEFUNCTION.html [2]: http://curl.haxx.se/libcurl/c/libcurl-tutorial.html
------------------------------------------------------------------- List admin: http://cool.haxx.se/list/listinfo/curl-library Etiquette: http://curl.haxx.se/mail/etiquette.html
