Christian Franke wrote:
Corinna Vinschen wrote:
On Apr 23 23:56, Christian Franke wrote:
Fredrik Rothamel wrote:
I just noticed that in 64-bit cygwin curl always include the
http-headers in the response.
(Old behaviour is to only include headers when -i option is
specified) >
Is this an intentional change?
Unlikely. In this case it should be possible to revert the default
-i (--include) with --no-include.
What about a type issue? int vs. long?
Yes, option is possibly set as int (bool) but retrieved as long:
src/tool_cfgable.h:89:
bool include_headers; /* ... */
src/tool_operate.c:886:
my_setopt(curl, CURLOPT_HEADER, config->include_headers);
lib/url.c:704:
case CURLOPT_HEADER:
...
data->set.include_header = (0 != va_arg(param, long))?TRUE:FALSE;
The attached patch would actually fix the issue. Likely not the correct
way to do this as va_arg(param, long) is also used for the other integer
options.
Is this possibly an upstream bug which is hidden on Linux et al. due to
a different x64 ABI (which requires register parameter zero extension) ?
Christian
--- origsrc/curl-7.29.0/lib/url.c 2013-02-06 10:47:19.000000000 +0100
+++ src/curl-7.29.0/lib/url.c 2013-04-24 22:20:27.418755700 +0200
@@ -705,7 +705,7 @@ CURLcode Curl_setopt(struct SessionHandl
/*
* Set to include the header in the general data output stream.
*/
- data->set.include_header = (0 != va_arg(param, long))?TRUE:FALSE;
+ data->set.include_header = (0 != va_arg(param, int))?TRUE:FALSE;
break;
case CURLOPT_NOPROGRESS:
/*
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple