diff options
-rw-r--r-- | src/backend.c | 4 | ||||
-rw-r--r-- | src/format.c | 19 | ||||
-rw-r--r-- | src/format.h | 4 |
3 files changed, 7 insertions, 20 deletions
diff --git a/src/backend.c b/src/backend.c index 3f20721..5b63b9f 100644 --- a/src/backend.c +++ b/src/backend.c @@ -253,7 +253,7 @@ backend_map_config_entry_add_one_cb(Slapi_Entry *e, void *callback_data) keys = malloc((data->n_key_formats + 1) * sizeof(char *)); if (keys != NULL) { for (i = 0; i < data->n_key_formats; i++) { - keys[i] = format_get_data(data->state, NULL, e, + keys[i] = format_get_data(data->state, e, data->domain, data->map, data->key_formats[i], data->disallowed_chars, @@ -264,7 +264,7 @@ backend_map_config_entry_add_one_cb(Slapi_Entry *e, void *callback_data) } else { return 0; } - value = format_get_data(data->state, NULL, e, data->domain, data->map, + value = format_get_data(data->state, e, data->domain, data->map, data->value_format, data->disallowed_chars, &data->ref_attrs, &data->inref_attrs); /* Pull out the NDN of this entry. */ diff --git a/src/format.c b/src/format.c index 6041c63..c5c7a1f 100644 --- a/src/format.c +++ b/src/format.c @@ -2155,30 +2155,19 @@ format_format(struct plugin_state *state, Slapi_PBlock *pb, Slapi_Entry *e, } char * -format_get_data(struct plugin_state *state, Slapi_PBlock *pb, Slapi_Entry *e, +format_get_data(struct plugin_state *state, Slapi_Entry *e, const char *domain, const char *map, const char *fmt, const char *disallowed, char ***ref_attrs, struct format_inref_attr ***inref_attrs) { - Slapi_PBlock *local_pb; + Slapi_PBlock *pb; char ***ndn_list, **local_ndn_list, *ret; - /* Supply a PBlock if the caller didn't. */ - if (pb == NULL) { - local_pb = slapi_pblock_new(); - pb = local_pb; - } else { - local_pb = NULL; - } - + pb = slapi_pblock_new(); ret = format_format(state, pb, e, domain, map, fmt, disallowed, NULL, ref_attrs, inref_attrs); - - /* If we supplied a PBlock, clean it up. */ - if (pb == local_pb) { - slapi_pblock_destroy(local_pb); - } + slapi_pblock_destroy(pb); return ret; } diff --git a/src/format.h b/src/format.h index 5728ff2..c2424b5 100644 --- a/src/format.h +++ b/src/format.h @@ -21,7 +21,6 @@ #ifndef format_h #define format_h -struct slapi_pblock; struct slapi_entry; struct plugin_state; @@ -36,8 +35,7 @@ void format_free_inref_attrs(struct format_inref_attr **); struct format_inref_attr **format_dup_inref_attrs(struct format_inref_attr **); void format_free_data(char *data); -char *format_get_data(struct plugin_state *state, - struct slapi_pblock *pb, struct slapi_entry *e, +char *format_get_data(struct plugin_state *state, struct slapi_entry *e, const char *domain, const char *map, const char *fmt, const char *disallowed_chars, char ***ref_attrs, |