[fix] expansion array destroy API in libpostal expand program
This commit is contained in:
10
src/main.c
10
src/main.c
@@ -16,30 +16,28 @@
|
|||||||
static inline void print_output(char *address, libpostal_normalize_options_t options, bool use_json) {
|
static inline void print_output(char *address, libpostal_normalize_options_t options, bool use_json) {
|
||||||
size_t num_expansions;
|
size_t num_expansions;
|
||||||
|
|
||||||
char **strings = libpostal_expand_address(address, options, &num_expansions);
|
char **expansions = libpostal_expand_address(address, options, &num_expansions);
|
||||||
|
|
||||||
char *normalized;
|
char *normalized;
|
||||||
|
|
||||||
if (!use_json) {
|
if (!use_json) {
|
||||||
for (size_t i = 0; i < num_expansions; i++) {
|
for (size_t i = 0; i < num_expansions; i++) {
|
||||||
normalized = strings[i];
|
normalized = expansions[i];
|
||||||
printf("%s\n", normalized);
|
printf("%s\n", normalized);
|
||||||
free(normalized);
|
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
printf("{\"expansions\": [");
|
printf("{\"expansions\": [");
|
||||||
for (size_t i = 0; i < num_expansions; i++) {
|
for (size_t i = 0; i < num_expansions; i++) {
|
||||||
normalized = strings[i];
|
normalized = expansions[i];
|
||||||
char *json_string = json_encode_string(normalized);
|
char *json_string = json_encode_string(normalized);
|
||||||
printf("%s%s", json_string, i < num_expansions - 1 ? ", ": "");
|
printf("%s%s", json_string, i < num_expansions - 1 ? ", ": "");
|
||||||
free(normalized);
|
|
||||||
free(json_string);
|
free(json_string);
|
||||||
}
|
}
|
||||||
printf("]}\n");
|
printf("]}\n");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
free(strings);
|
libpostal_expansion_array_destroy(expansions, num_expansions);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user