summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorDave Hylands <dhylands@gmail.com>2014-04-01 11:01:55 -0700
committerDave Hylands <dhylands@gmail.com>2014-04-01 11:03:44 -0700
commit80359aa96e87141c5ab842c0fd501646baa1050c (patch)
treee6e49c3a4c26c2758e8d8aa987c8d6e6a27dd603
parent51413c8cb63bfdc4fba3f0a144459b0082ce2bf2 (diff)
downloadmicropython-80359aa96e87141c5ab842c0fd501646baa1050c.tar.gz
micropython-80359aa96e87141c5ab842c0fd501646baa1050c.zip
Fix INT_BUF_SIZE to work with 32-bit and 64-bit
-rw-r--r--py/pfenv.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/py/pfenv.c b/py/pfenv.c
index 07f35c335c..018870158e 100644
--- a/py/pfenv.c
+++ b/py/pfenv.c
@@ -71,8 +71,9 @@ int pfenv_print_strn(const pfenv_t *pfenv, const char *str, unsigned int len, in
return len;
}
-// enough room for 32 signed number
-#define INT_BUF_SIZE (16)
+// 32-bits is 10 digits, add 3 for commas, 1 for sign, 1 for terminating null
+// We can use 16 characters for 32-bit and 32 characters for 64-bit
+#define INT_BUF_SIZE (sizeof(machine_int_t) * 4)
int pfenv_print_int(const pfenv_t *pfenv, unsigned int x, int sgn, int base, int base_char, int flags, char fill, int width) {
char sign = 0;