summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorNalin Dahyabhai <nalin@redhat.com>2012-04-10 17:08:16 -0400
committerNalin Dahyabhai <nalin@redhat.com>2012-04-10 17:08:16 -0400
commited807a0f5f60499095ffb11655cd7abbaa516d0d (patch)
tree063e281e6d77e63cbd2ecf816fc07e3b36c6bebe /src
parent99b56fe001842549461a706f726e67785e20ae13 (diff)
downloadslapi-nis-ed807a0f5f60499095ffb11655cd7abbaa516d0d.tar.gz
slapi-nis-ed807a0f5f60499095ffb11655cd7abbaa516d0d.tar.xz
slapi-nis-ed807a0f5f60499095ffb11655cd7abbaa516d0d.zip
- log errors evaluating pad expressions in %%link rather than continuing on until we hit an arithmetic exception (#810258)
Diffstat (limited to 'src')
-rw-r--r--src/format.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/format.c b/src/format.c
index ee85b6f..aaa7f57 100644
--- a/src/format.c
+++ b/src/format.c
@@ -2940,6 +2940,21 @@ format_link(struct plugin_state *state, Slapi_PBlock *pb, Slapi_Entry *e,
&lengths[j]);
if (values[j] != NULL) {
n_lists++;
+ } else {
+ slapi_log_error(SLAPI_LOG_FATAL,
+ state->plugin_desc->spd_id,
+ "link: error evaluating \"%s\" "
+ "for \"%s\"\n",
+ argv[i + 1],
+ slapi_entry_get_dn(e));
+ format_free_parsed_args(argv);
+ for (i = 0; i < j; i++) {
+ format_free_data_set(values[i], lengths[i]);
+ }
+ free(values);
+ free(lengths);
+ free(n_items);
+ return -ENOENT;
}
}