This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Re: Difference in 32/64-bit curl.
- From: Christian Franke <Christian dot Franke at t-online dot de>
- To: cygwin at cygwin dot com
- Date: Wed, 24 Apr 2013 23:21:04 +0200
- Subject: Re: Difference in 32/64-bit curl.
- References: <51766C22 dot 10702 at bahnhof dot se> <51770372 dot 4070408 at t-online dot de> <20130424125930 dot GQ26397 at calimero dot vinschen dot de> <1UUzp1-23sI640 at fwd56 dot aul dot t-online dot de>
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