I see your point; older compilers like Visual Studio 1998 (VC6) probably
defined the return value of _beginthreadex as "unsigned". These sort of
64-bit portability issues weren't addressed until the Win64 compiler was
developed for Visual Studio 2002/2003; this was the Itanium preview
compiler.
Perhaps this would be a better definition:
(curl_thread_t)(((char *) NULL) - 1)
Alternatively, since we're already #including <Windows.h>, this is also a
valid option, which I like the most:
(curl_thread_t)INVALID_HANDLE_VALUE
The Windows header already took care of the cast. For example, in the
newest SDK, 8.1's:
#define INVALID_HANDLE_VALUE ((HANDLE)(LONG_PTR)-1)
This macro has existed, though not with LONG_PTR, since the beginning of
Win32 in NT 3.1; it's the failure return code for CreateFileW.
-----Original Message-----
From: Steve Holme
Sent: Wednesday, December 4, 2013 12:47 PM
To: 'libcurl development'
Subject: RE: [PATCH] Three trivial warning fixes
On Wed, 4 Dec 2013, [email protected] wrote:
Rather than patch it up as myself, and take credit for it, could you
please submit git patches against the latest version of code in the
repository as per the following link? It will also help the other
reviewers here as well as provide a speedy resolution ;-)
OK, I've attached git versions of these patches to this email that I
made in Linux according to those instructions.
Many thanks. I have pushed patch #2 as commit b0b5b511935669, however:
a) I'm not sure about Patch #1 myself as I don't think intptr_t is C89
compliant so I believe we would need to define that type ourselves for
systems that don't include it (like we do with size_t), however, that isn't
my area of expertise so I'm quite willing to be bow to the knowledge of
others and be proved wrong ;-)
b) I would recommend Nick takes a look at Patch #3 as he is our resident
Darwin SSL expert.
I don't know whether I did this right, since I'm a Windows person
who far prefers Subversion.
Yep perfect. Me too - I've used Subversion, Clearcase and good ol'
SourceSafe before (not to mention Microsoft Delta but that's showing my
age!!).
I would recommend installing TortoiseGIT (which I'm sure you'll find
familiar) and its dependency (msysgit). They can be found at:
http://code.google.com/p/tortoisegit/
http://code.google.com/p/msysgit/
Why does the web site have instructions for the non-git case when
that's not the form the mailing list wants?
I'm not entirely sure myself... In the 2 and half years that I have been
contributing to curl I, like yourself, submitted patches to the mailing list
to begin with but using TortoiseGIT instead and over that time I can
probably count on one hand the number of times I've seen other types of
patch ;-)
Many thanks again.
Regards
Steve
-------------------------------------------------------------------
List admin: http://cool.haxx.se/list/listinfo/curl-library
Etiquette: http://curl.haxx.se/mail/etiquette.html
-------------------------------------------------------------------
List admin: http://cool.haxx.se/list/listinfo/curl-library
Etiquette: http://curl.haxx.se/mail/etiquette.html