[parser] Fixing possible invalid writes in training for values beginning with a separator

This commit is contained in:
Al
2015-12-11 02:05:05 -05:00
parent 743b74aea5
commit 671dd4a5d2
2 changed files with 5 additions and 7 deletions

View File

@@ -51,13 +51,12 @@ bool address_parser_data_set_tokenize_line(address_parser_data_set_t *data_set,
label = str + last_separator_index + 1;
uint32_t last_separator_type = ADDRESS_SEPARATOR_NONE;
if (strcmp(label, FIELD_SEPARATOR_LABEL) == 0) {
last_separator_type = uint32_array_pop(separators);
uint32_array_pop(separators);
uint32_array_push(separators, ADDRESS_SEPARATOR_FIELD | ADDRESS_SEPARATOR_FIELD_INTERNAL);
continue;
} else if (strcmp(label, SEPARATOR_LABEL) == 0) {
last_separator_type = uint32_array_pop(separators);
uint32_array_pop(separators);
uint32_array_push(separators, ADDRESS_SEPARATOR_FIELD_INTERNAL);
continue;
}