|
|
@ -1472,14 +1472,16 @@ gettrans(const char *name, const char *name_end) |
|
|
static bool |
|
|
static bool |
|
|
model_bin_match(char *token, char *model_name) |
|
|
model_bin_match(char *token, char *model_name) |
|
|
{ |
|
|
{ |
|
|
char *dot_char; |
|
|
|
|
|
|
|
|
/* find last dot in model_name */ |
|
|
|
|
|
char *dot_char = strrchr(model_name, '.'); |
|
|
bool flag = FALSE; |
|
|
bool flag = FALSE; |
|
|
/* continue evaluation if toeken is part of model_name */ |
|
|
|
|
|
if (strncmp(model_name, token, strlen(token)) == 0) { |
|
|
|
|
|
/* find last dot in model_name */ |
|
|
|
|
|
if ((dot_char = strrchr(model_name, '.')) != NULL) { |
|
|
|
|
|
|
|
|
/* check if token equals the substring before last dot in model_name */ |
|
|
|
|
|
if (dot_char) { |
|
|
|
|
|
char *mtoken = copy_substring(model_name, dot_char); |
|
|
|
|
|
if (cieq(mtoken, token)) { |
|
|
flag = TRUE; |
|
|
flag = TRUE; |
|
|
dot_char++; |
|
|
dot_char++; |
|
|
|
|
|
/* check if model_name has binning info (trailing digit(s)) */ |
|
|
while (*dot_char != '\0') { |
|
|
while (*dot_char != '\0') { |
|
|
if (!isdigit(*dot_char)) { |
|
|
if (!isdigit(*dot_char)) { |
|
|
flag = FALSE; |
|
|
flag = FALSE; |
|
|
@ -1488,6 +1490,7 @@ model_bin_match(char *token, char *model_name) |
|
|
dot_char++; |
|
|
dot_char++; |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
tfree(mtoken); |
|
|
} |
|
|
} |
|
|
return flag; |
|
|
return flag; |
|
|
} |
|
|
} |
|
|
|