From 0e6e01dc4e42c9949deab52decac708787e343ce Mon Sep 17 00:00:00 2001 From: Nalin Dahyabhai Date: Sat, 21 Jun 2008 11:10:35 -0400 Subject: - correct the reading of base locations, too --- src/backend.c | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) (limited to 'src') diff --git a/src/backend.c b/src/backend.c index f650349..997b08f 100644 --- a/src/backend.c +++ b/src/backend.c @@ -421,13 +421,14 @@ backend_map_config_read_config(struct plugin_state *state, Slapi_Entry *e, count = slapi_valueset_count(values); bases = malloc(sizeof(char *) * (count + 1)); if (bases != NULL) { - for (i = slapi_valueset_first_value(values, &value); - i != -1; - i = slapi_valueset_next_value(values, i, &value)) { + i = 0; + for (j = slapi_valueset_first_value(values, &value); + j != -1; + j = slapi_valueset_next_value(values, j, &value)) { cvalue = slapi_value_get_string(value); - bases[i] = strdup(cvalue); + bases[i++] = strdup(cvalue); } - bases[count] = NULL; + bases[i] = NULL; } slapi_vattr_values_free(&values, &actual_attr, buffer_flags); } @@ -449,15 +450,16 @@ backend_map_config_read_config(struct plugin_state *state, Slapi_Entry *e, key_formats = malloc((slapi_valueset_count(values) + 1) * (sizeof (char *))); if (key_formats != NULL) { + i = 0; for (j = slapi_valueset_first_value(values, &value); j != -1; j = slapi_valueset_next_value(values, j, &value)) { cvalue = slapi_value_get_string(value); - key_formats[i] = strdup(cvalue); + key_formats[i++] = strdup(cvalue); } + key_formats[i] = NULL; slapi_vattr_values_free(&values, &actual_attr, buffer_flags); - key_formats[i] = NULL; } } value_format = NULL; -- cgit