Index: url.c
===================================================================
RCS file: /cvsroot/curl/curl/lib/url.c,v
retrieving revision 1.657
diff -u -r1.657 url.c
--- url.c	15 Oct 2007 18:32:01 -0000	1.657
+++ url.c	16 Oct 2007 14:33:16 -0000
@@ -1045,10 +1045,8 @@
        *  Check that request length does not overflow the size_t type.
        */
 
-      if ((curl_off_t) ((size_t) data->set.postfieldsize) !=
-          data->set.postfieldsize ||
-          data->set.postfieldsize < (curl_off_t) 0 ||
-          (size_t) data->set.postfieldsize < (size_t) 0)
+      if ((data->set.postfieldsize < 0) ||
+          (data->set.postfieldsize > (curl_off_t)((size_t)-1)))
         result = CURLE_OUT_OF_MEMORY;
       else {
         char * p;
