Merge pull request #1176 from aap-sc/aap-sc/csr_as_hex_regression_fixup

fix incorrect parsing of names for custom csr registers
This commit is contained in:
Anatoly Parshintsev 2024-11-29 18:26:19 +03:00 committed by GitHub
commit ca80920157
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 5 additions and 1 deletions

View File

@ -4164,12 +4164,16 @@ static int parse_reg_ranges_impl(struct list_head *ranges, char *args,
}
const char * const reg_name_in = equals + 1;
*name_buffer = calloc(1, strlen(reg_name_in) + strlen(reg_type) + 2);
const size_t reg_type_len = strlen(reg_type);
/* format is: <reg_type>_<reg_name_in>\0 */
*name_buffer = calloc(1, strlen(reg_name_in) + reg_type_len + 2);
name = *name_buffer;
if (!name) {
LOG_ERROR("Out of memory");
return ERROR_FAIL;
}
strcpy(name, reg_type);
name[reg_type_len] = '_';
unsigned int scanned_chars;
char *scan_dst = name + strlen(reg_type) + 1;