]> granicus.if.org Git - python/commitdiff
Issue #9566: Fix compiler warning on Windows 64-bit
authorVictor Stinner <victor.stinner@gmail.com>
Tue, 4 Jun 2013 22:21:31 +0000 (00:21 +0200)
committerVictor Stinner <victor.stinner@gmail.com>
Tue, 4 Jun 2013 22:21:31 +0000 (00:21 +0200)
Objects/unicodeobject.c

index 9f57cdb50cd3f70bf70f0a890f94219d7f098bc1..4c3ecd6f7625b28b57de440c809256e67963ddcc 100644 (file)
@@ -6725,7 +6725,8 @@ decode_code_page_errors(UINT code_page,
     /* each step cannot decode more than 1 character, but a character can be
        represented as a surrogate pair */
     wchar_t buffer[2], *startout, *out;
-    int insize, outsize;
+    int insize;
+    Py_ssize_t outsize;
     PyObject *errorHandler = NULL;
     PyObject *exc = NULL;
     PyObject *encoding_obj = NULL;
@@ -6995,10 +6996,11 @@ encode_code_page_strict(UINT code_page, PyObject **outbytes,
         Py_DECREF(substring);
         return -1;
     }
+    assert(size <= INT_MAX);
 
     /* First get the size of the result */
     outsize = WideCharToMultiByte(code_page, flags,
-                                  p, size,
+                                  p, (int)size,
                                   NULL, 0,
                                   NULL, pusedDefaultChar);
     if (outsize <= 0)
@@ -7035,7 +7037,7 @@ encode_code_page_strict(UINT code_page, PyObject **outbytes,
 
     /* Do the conversion */
     outsize = WideCharToMultiByte(code_page, flags,
-                                  p, size,
+                                  p, (int)size,
                                   out, outsize,
                                   NULL, pusedDefaultChar);
     Py_CLEAR(substring);