summaryrefslogtreecommitdiff
path: root/Python/modsupport.c
diff options
context:
space:
mode:
authorMartin v. Löwis <martin@v.loewis.de>2006-02-15 17:27:45 +0000
committerMartin v. Löwis <martin@v.loewis.de>2006-02-15 17:27:45 +0000
commit26a6348f77faff1083d501950812ea9f68eb9547 (patch)
tree8aebd3631f3b60d9753cd8271c0ad7c1379af1a2 /Python/modsupport.c
parentad4cf65e988f853a3b32a7da30198ce9c6c73c02 (diff)
downloadcpython-26a6348f77faff1083d501950812ea9f68eb9547.tar.gz
Merge ssize_t branch.
Diffstat (limited to 'Python/modsupport.c')
-rw-r--r--Python/modsupport.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/Python/modsupport.c b/Python/modsupport.c
index 7241936fe9..f92fc341a8 100644
--- a/Python/modsupport.c
+++ b/Python/modsupport.c
@@ -313,6 +313,11 @@ do_mkvalue(const char **p_format, va_list *p_va)
return PyInt_FromLong(n);
}
+ case 'n':
+#if SIZEOF_SIZE_T!=SIZEOF_LONG
+ return PyLong_FromSsize_t(va_arg(*p_va, Py_Ssize_t));
+#endif
+ /* Fall through from 'n' to 'l' if Py_ssize_t is long */
case 'l':
return PyInt_FromLong(va_arg(*p_va, long));
@@ -371,7 +376,7 @@ do_mkvalue(const char **p_format, va_list *p_va)
case 'c':
{
char p[1];
- p[0] = va_arg(*p_va, int);
+ p[0] = (char)va_arg(*p_va, int);
return PyString_FromStringAndSize(p, 1);
}