]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
fts: Add assert to make sure fts_parser.deinit() returns retriable_error_msg when...
authorTimo Sirainen <timo.sirainen@dovecot.fi>
Thu, 14 Dec 2017 19:26:28 +0000 (21:26 +0200)
committerAki Tuomi <aki.tuomi@open-xchange.com>
Fri, 15 Dec 2017 10:34:58 +0000 (12:34 +0200)
src/plugins/fts/fts-parser.c

index 98df61bd9060043d3de3f8bb2b3597c4a23c0e8a..47c5f6d2b30e6913cfcf5635b276a2f72b55f67c 100644 (file)
@@ -99,9 +99,15 @@ int fts_parser_deinit(struct fts_parser **_parser, const char **retriable_err_ms
        *_parser = NULL;
 
        buffer_free(&parser->utf8_output);
-       if (parser->v.deinit != NULL)
-               ret = parser->v.deinit(parser, retriable_err_msg_r);
-       else
+       if (parser->v.deinit != NULL) {
+               const char *error = NULL;
+               ret = parser->v.deinit(parser, &error);
+               if (ret == 0) {
+                       i_assert(error != NULL);
+                       if (retriable_err_msg_r != NULL)
+                               *retriable_err_msg_r = error;
+               }
+       } else
                i_free(parser);
        return ret;
 }