moved the lseek() and stat() magic defines to setup.h and now take advantage
authorDaniel Stenberg <daniel@haxx.se>
Thu, 16 Dec 2004 18:09:27 +0000 (18:09 +0000)
committerDaniel Stenberg <daniel@haxx.se>
Thu, 16 Dec 2004 18:09:27 +0000 (18:09 +0000)
of struct_stat in formdata.c as well, to support formpost uploads of large
files on Windows too

lib/file.c
lib/formdata.c
lib/setup.h

index 6b2bbd1..267a99b 100644 (file)
@@ -167,14 +167,6 @@ CURLcode Curl_file_connect(struct connectdata *conn)
   return CURLE_OK;
 }
 
-#if defined(WIN32) && (SIZEOF_CURL_OFF_T > 4)
-#define lseek(x,y,z) _lseeki64(x, y, z)
-#define struct_stat struct _stati64
-#define fstat(fd,st) _fstati64(fd,st)
-#else
-#define struct_stat struct stat
-#endif
-
 CURLcode Curl_file_done(struct connectdata *conn,
                         CURLcode status)
 {
index 07e5a0d..4f0845c 100644 (file)
@@ -835,7 +835,7 @@ static CURLcode AddFormData(struct FormData **formp,
       /* Since this is a file to be uploaded here, add the size of the actual
          file */
       if(!strequal("-", newform->line)) {
-        struct stat file;
+        struct_stat file;
         if(!stat(newform->line, &file)) {
           *size += file.st_size;
         }
index b893417..b024699 100644 (file)
@@ -133,6 +133,14 @@ typedef unsigned char bool;
 #define SEND_4TH_ARG 0
 #endif
 
+/* To make large file support transparent even on Windows */
+#if defined(WIN32) && (SIZEOF_CURL_OFF_T > 4)
+#define lseek(x,y,z) _lseeki64(x, y, z)
+#define struct_stat struct _stati64
+#define fstat(fd,st) _fstati64(fd,st)
+#else
+#define struct_stat struct stat
+#endif
 
 /* Below we define four functions. They should
    1. close a socket