]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
dict-file: Fix memory leak when file is recreated during lock wait
authorTimo Sirainen <timo.sirainen@dovecot.fi>
Thu, 28 Jun 2018 08:50:36 +0000 (11:50 +0300)
committerAki Tuomi <aki.tuomi@open-xchange.com>
Fri, 29 Jun 2018 10:32:22 +0000 (10:32 +0000)
src/lib-dict/dict-file.c

index 683586fa7abe563c494619c8b30e97b38f52e71e..93a0751fce2a6063e409f26fdf1f62eb6bde023e 100644 (file)
@@ -492,7 +492,9 @@ file_dict_lock(struct file_dict *dict, struct file_lock **lock_r,
                                                     dict->path);
        }
 
+       *lock_r = NULL;
        do {
+               file_lock_free(lock_r);
                if (file_wait_lock(dict->fd, dict->path, F_WRLCK,
                                   dict->lock_method,
                                   file_dict_dotlock_settings.timeout,