diff options
author | Nalin Dahyabhai <nalin.dahyabhai@pobox.com> | 2008-06-25 18:05:59 -0400 |
---|---|---|
committer | Nalin Dahyabhai <nalin.dahyabhai@pobox.com> | 2008-06-25 18:05:59 -0400 |
commit | 8f827e17bd9806d7bb599ea7e3440f923e05e452 (patch) | |
tree | b85f38dc866a799b95ac97aa630457e9d648880f /src/map.c | |
parent | fbd45de92c70a130d74a0d48f8975483ae21f68b (diff) | |
download | slapi-nis-8f827e17bd9806d7bb599ea7e3440f923e05e452.tar.gz slapi-nis-8f827e17bd9806d7bb599ea7e3440f923e05e452.tar.xz slapi-nis-8f827e17bd9806d7bb599ea7e3440f923e05e452.zip |
- don't require a key count when we're adding an entry to the map
Diffstat (limited to 'src/map.c')
-rw-r--r-- | src/map.c | 17 |
1 files changed, 10 insertions, 7 deletions
@@ -840,17 +840,19 @@ map_data_set_entry(struct plugin_state *state, const char *domain_name, const char *map_name, const char *id, - unsigned int n_keys, - unsigned int *key_lens, + unsigned int *key_lengths, char **keys, unsigned int value_len, char *value) { struct map *map; struct map_entry *entry; - unsigned int i, key_len; + unsigned int i, key_len, n_keys; void **key_trees; map = map_data_find_map(state, domain_name, map_name); + for (n_keys = 0; keys[n_keys] != NULL; n_keys++) { + continue; + } if (value_len == (unsigned int) -1) { value_len = strlen(value); } @@ -893,8 +895,8 @@ map_data_set_entry(struct plugin_state *state, entry->keys = malloc((n_keys + 1) * sizeof(char *)); if (entry->keys != NULL) { for (i = 0; i < n_keys; i++) { - if (key_lens != NULL) { - key_len = key_lens[i]; + if (key_lengths != NULL) { + key_len = key_lengths[i]; } else { key_len = -1; } @@ -934,8 +936,9 @@ map_data_set_entry(struct plugin_state *state, if ((entry->keys != NULL) && (entry->key_len != NULL)) { for (i = 0; i < n_keys; i++) { - if (key_lens != NULL) { - key_len = key_lens[i]; + if (key_lengths != NULL) { + key_len = + key_lengths[i]; } else { key_len = -1; } |