Index: COLINUX_0_5/src/colinux/user/config.c diff -u COLINUX_0_5/src/colinux/user/config.c:1.1.1.3 COLINUX_0_5/src/colinux/user/config.c:1.1.1.3.2.1 --- COLINUX_0_5/src/colinux/user/config.c:1.1.1.3 Wed Feb 25 03:58:30 2004 +++ COLINUX_0_5/src/colinux/user/config.c Wed Feb 25 05:34:34 2004 @@ -130,18 +130,17 @@ if (!char_is_digit(*text)) return CO_RC(ERROR); - while (char_is_digit(*text)) { + do { last_number = number; number *= 10; + number += (*text - '0'); if (number < last_number) { /* Overflow */ return CO_RC(ERROR); } - number += (*text - '0'); - text++; - } + } while (char_is_digit(*++text)) ; if (*text == '\0') { *number_out = number;