diff options
author | Gisle Vanem <gvanem@broadpark.no> | 2004-08-20 13:45:26 +0000 |
---|---|---|
committer | Gisle Vanem <gvanem@broadpark.no> | 2004-08-20 13:45:26 +0000 |
commit | 6deb40acac246489db7c6021f7432d83a867670d (patch) | |
tree | 48fe529bed68f3b197e8e39fd60d70453d5551ce /ares_process.c | |
parent | 5133b2b6b9755497bf2cc6c58f40fbebc24b47f6 (diff) | |
download | c-ares-6deb40acac246489db7c6021f7432d83a867670d.tar.gz c-ares-6deb40acac246489db7c6021f7432d83a867670d.tar.bz2 c-ares-6deb40acac246489db7c6021f7432d83a867670d.zip |
Changes for Watt-32 on Windows. I've assumed Configure
sets the required HAVE_xx defines for non-DOS/Win targets.
Diffstat (limited to 'ares_process.c')
-rw-r--r-- | ares_process.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/ares_process.c b/ares_process.c index 9e5156e..4a88b76 100644 --- a/ares_process.c +++ b/ares_process.c @@ -16,27 +16,33 @@ #include "setup.h" #include <sys/types.h> -#ifdef WIN32 +#if defined(WIN32) && !defined(WATT32) #include "nameser.h" + #else #include <sys/socket.h> +#ifdef HAVE_SYS_UIO_H #include <sys/uio.h> +#endif #include <netinet/in.h> #include <netdb.h> #include <arpa/nameser.h> +#ifdef HAVE_UNISTD_H #include <unistd.h> #endif +#endif #include <string.h> #include <stdlib.h> #include <fcntl.h> #include <time.h> #include <errno.h> + #include "ares.h" #include "ares_dns.h" #include "ares_private.h" -#ifdef WIN32 +#if defined(WIN32) || defined(WATT32) #define GET_ERRNO() WSAGetLastError() #else #define GET_ERRNO() errno @@ -234,7 +240,8 @@ static void read_tcp_data(ares_channel channel, fd_set *read_fds, time_t now) */ process_answer(channel, server->tcp_buffer, server->tcp_length, i, 1, now); - free(server->tcp_buffer); + if (server->tcp_buffer) + free(server->tcp_buffer); server->tcp_buffer = NULL; server->tcp_lenbuf_pos = 0; } |