From d34f8dd6d9d6888da3e1535233196d41aa403d72 Mon Sep 17 00:00:00 2001 From: Dmitri Pal Date: Sun, 26 Dec 2010 00:10:23 -0500 Subject: Return error in DETECT mode If in merge DETECT mode and there were no parsing errors return error if there were merge collisions. --- ini/ini_parse.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/ini/ini_parse.c b/ini/ini_parse.c index 193b522..32b4c02 100644 --- a/ini/ini_parse.c +++ b/ini/ini_parse.c @@ -1447,7 +1447,18 @@ int parser_run(struct parser_obj *po) col_delete_item(item); if (action == PARSE_DONE) { + TRACE_INFO_NUMBER("We are done", error); + + /* Report merge error in detect mode + * if no other error was detected. */ + if ((po->ret == 0) && + (po->merge_error != 0) && + ((po->collision_flags & INI_MV1S_DETECT) || + (po->collision_flags & INI_MV2S_DETECT) || + (po->collision_flags & INI_MS_DETECT))) + po->ret = po->merge_error; + error = po->ret; break; } -- cgit