diff --git a/libs/libc/stdlib/lib_checkbase.c b/libs/libc/stdlib/lib_checkbase.c index 0cd0546f3a7..c70c436cf26 100644 --- a/libs/libc/stdlib/lib_checkbase.c +++ b/libs/libc/stdlib/lib_checkbase.c @@ -69,18 +69,21 @@ int lib_checkbase(int base, FAR const char **pptr) if (*ptr == '0') { - /* Assume octal */ - - base = 8; - ptr++; - - /* Check for hexadecimal */ - - if ((*ptr == 'X' || *ptr == 'x') && - lib_isbasedigit(ptr[1], 16, NULL)) + if (ptr[1] != '\0') { - base = 16; + /* Assume octal */ + + base = 8; ptr++; + + /* Check for hexadecimal */ + + if ((*ptr == 'X' || *ptr == 'x') && + lib_isbasedigit(ptr[1], 16, NULL)) + { + base = 16; + ptr++; + } } } }