X-Git-Url: https://review.openocd.org/gitweb?a=blobdiff_plain;f=src%2Fflash%2Fcommon.c;h=46cb243e1c2ab354e8b606be94402bee9e369ef4;hb=7bbd6c76838ffc639226897328d8ec7069b1769d;hp=253ed9d875b4dfda15bd1df21a2da2b60782b41b;hpb=870b8c04557f0b7441cc502debaf537984d77e2a;p=openocd.git diff --git a/src/flash/common.c b/src/flash/common.c index 253ed9d875..46cb243e1c 100644 --- a/src/flash/common.c +++ b/src/flash/common.c @@ -21,15 +21,17 @@ #endif #include "common.h" -#include "log.h" +#include unsigned get_flash_name_index(const char *name) { - const char *index = strchr(name, '.'); - if (NULL == index) + const char *name_index = strrchr(name, '.'); + if (NULL == name_index) return 0; + if (name_index[1] < '0' || name_index[1] > '9') + return ~0U; unsigned requested; - int retval = parse_uint(index + 1, &requested); + int retval = parse_uint(name_index + 1, &requested); // detect parsing error by forcing past end of bank list return (ERROR_OK == retval) ? requested : ~0U; }