deps: c-ares float, manual ares_ssize_t definition
c-ares switched to using ares_ssize_t for platform-independent ssize_t, our GYP usage to include config/<platform>/ares_config.h causes problems when including gyp as a library in core, i.e. in env.h and cares_wrap.h, where the defines don't get pulled in properly. This, so far, is the easiest approach to just making it work nicely--explicitly defining ares_ssize_t for the different Windows variants and ssize_t for non-Windows where we don't have a configured type from an ares_config.h. In all of our non-Windows platforms it is ssize_t anyway so this is safe. PR-URL: https://github.com/nodejs/node/pull/15378 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> PR-URL: https://github.com/nodejs/node/pull/19939 Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
This commit is contained in:
parent
b0b7afcfbe
commit
de66bd34b9
12
deps/cares/include/ares_build.h
vendored
12
deps/cares/include/ares_build.h
vendored
@ -194,14 +194,16 @@
|
||||
/* Data type definition of ares_ssize_t. */
|
||||
#ifdef _WIN32
|
||||
# ifdef _WIN64
|
||||
# define CARES_TYPEOF_ARES_SSIZE_T __int64
|
||||
typedef __int64 ares_ssize_t;
|
||||
# else
|
||||
# define CARES_TYPEOF_ARES_SSIZE_T long
|
||||
typedef long ares_ssize_t;
|
||||
# endif
|
||||
#else
|
||||
# define CARES_TYPEOF_ARES_SSIZE_T ssize_t
|
||||
# ifdef CARES_TYPEOF_ARES_SSIZE_T
|
||||
typedef CARES_TYPEOF_ARES_SSIZE_T ares_ssize_t;
|
||||
# else
|
||||
typedef ssize_t ares_ssize_t;
|
||||
# endif
|
||||
#endif
|
||||
|
||||
typedef CARES_TYPEOF_ARES_SSIZE_T ares_ssize_t;
|
||||
|
||||
#endif /* __CARES_BUILD_H */
|
||||
|
Loading…
x
Reference in New Issue
Block a user