From 1674491c44b944b7e08f374b5b8108dfddfd028c Mon Sep 17 00:00:00 2001 From: Alan Cox Date: Sat, 23 May 2015 12:16:46 +0100 Subject: [PATCH] pagesize: Fix broken output _itoa(32768U) broke horribly. Use _uitoa() and fix the sign bug in uitoa. --- Applications/util/pagesize.c | 2 +- Library/include/stdlib.h | 1 + Library/libs/xitoa.c | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/Applications/util/pagesize.c b/Applications/util/pagesize.c index 8fd9b649..5df07f7a 100644 --- a/Applications/util/pagesize.c +++ b/Applications/util/pagesize.c @@ -4,7 +4,7 @@ int main(int argc, char *argv[]) { - const char *p = _itoa(sysconf(_SC_PAGESIZE)); + const char *p = _uitoa((int)sysconf(_SC_PAGESIZE)); write(1, p, strlen(p)); write(1, "\n", 1); return 0; diff --git a/Library/include/stdlib.h b/Library/include/stdlib.h index a4be5ad0..210099ec 100644 --- a/Library/include/stdlib.h +++ b/Library/include/stdlib.h @@ -42,6 +42,7 @@ extern int atoi __P((const char *str)); extern long atol __P((const char *strP)); extern char *_itoa __P((int value)); +extern char *_uitoa __P((unsigned int value)); extern char *_ltoa __P((long value)); extern char *_ultoa __P((unsigned long value)); diff --git a/Library/libs/xitoa.c b/Library/libs/xitoa.c index 2c076f1d..1f302798 100644 --- a/Library/libs/xitoa.c +++ b/Library/libs/xitoa.c @@ -10,7 +10,7 @@ static char buf[7]; -char *_uitoa(int i) +char *_uitoa(unsigned int i) { char *p = buf + sizeof(buf); int c; -- 2.34.1