1
0
mirror of https://github.com/moparisthebest/curl synced 2024-12-21 23:58:49 -05:00

typecast the setting of the size, as it might be an off_t which is bigger

than long and libcurl expects a long...
This commit is contained in:
Daniel Stenberg 2003-04-15 14:18:37 +00:00
parent eb54d34bec
commit 9a12db1aa2

View File

@ -47,13 +47,16 @@ CURLcode test(char *URL)
const char *buf_2 = "RNTO 505-forreal"; const char *buf_2 = "RNTO 505-forreal";
/* get the file size of the local file */ /* get the file size of the local file */
hd = open(arg2, O_RDONLY) ; hd = stat(arg2, &file_info);
if(hd == -1) { if(hd == -1) {
/* can't open file, bail out */ /* can't open file, bail out */
return -1; return -1;
} }
fstat(hd, &file_info);
close(hd); if(! file_info.st_size) {
fprintf(stderr, "WARNING: file %s has no size!\n", arg2);
return -4;
}
/* get a FILE * of the same file, could also be made with /* get a FILE * of the same file, could also be made with
fdopen() from the previous descriptor, but hey this is just fdopen() from the previous descriptor, but hey this is just
@ -89,7 +92,8 @@ CURLcode test(char *URL)
curl_easy_setopt(curl, CURLOPT_INFILE, hd_src); curl_easy_setopt(curl, CURLOPT_INFILE, hd_src);
/* and give the size of the upload (optional) */ /* and give the size of the upload (optional) */
curl_easy_setopt(curl, CURLOPT_INFILESIZE, file_info.st_size); curl_easy_setopt(curl, CURLOPT_INFILESIZE,
(long)file_info.st_size);
/* Now run off and do what you've been told! */ /* Now run off and do what you've been told! */
res = curl_easy_perform(curl); res = curl_easy_perform(curl);