]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
fts-lucene: Don't crash if optimize can't open the index.
authorTimo Sirainen <tss@iki.fi>
Thu, 4 Aug 2011 11:12:30 +0000 (14:12 +0300)
committerTimo Sirainen <tss@iki.fi>
Thu, 4 Aug 2011 11:12:30 +0000 (14:12 +0300)
src/plugins/fts-lucene/lucene-wrapper.cc

index 768f8c8fdf33dc82c02a43d31162cd733d990a30..2c3affefec8792aa2290ddea5a5a5cd9fc83b14f 100644 (file)
@@ -450,15 +450,16 @@ int lucene_index_optimize_finish(struct lucene_index *index)
        if (IndexReader::isLocked(index->path))
                IndexReader::unlock(index->path);
 
-       IndexWriter *writer =
-               _CLNEW IndexWriter(index->path, index->analyzer, false);
+       IndexWriter *writer = NULL;
        try {
+               writer = _CLNEW IndexWriter(index->path, index->analyzer, false);
                writer->optimize();
        } catch (CLuceneError &err) {
                lucene_handle_error(index, err, "IndexWriter::optimize()");
                ret = -1;
        }
-       _CLDELETE(writer);
+       if (writer != NULL)
+               _CLDELETE(writer);
        return ret;
 }