]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-fs: Move file deinit code from fs_file_deinit() to fs_file_free()
authorTimo Sirainen <timo.sirainen@open-xchange.com>
Fri, 29 Nov 2019 14:55:42 +0000 (16:55 +0200)
committertimo.sirainen <timo.sirainen@open-xchange.com>
Wed, 11 Dec 2019 10:12:30 +0000 (10:12 +0000)
src/lib-fs/fs-api.c

index 700c6aacc78bdfa3f0adf6b0bab68e64304048d8..61b3bacd17f9a75f8e37861500c2495715f6fa6a 100644 (file)
@@ -288,15 +288,10 @@ struct fs_file *fs_file_init_with_event(struct fs *fs, struct event *event,
 void fs_file_deinit(struct fs_file **_file)
 {
        struct fs_file *file = *_file;
-       struct event *event;
-       pool_t metadata_pool;
 
        if (file == NULL)
                return;
 
-       event = file->event;
-       metadata_pool = file->metadata_pool;
-
        i_assert(file->fs->files_open_count > 0);
 
        *_file = NULL;
@@ -308,15 +303,13 @@ void fs_file_deinit(struct fs_file **_file)
        T_BEGIN {
                file->fs->v.file_deinit(file);
        } T_END;
-
-       event_unref(&event);
-       if (metadata_pool != NULL)
-               pool_unref(&metadata_pool);
 }
 
 void fs_file_free(struct fs_file *file)
 {
        fs_file_deinit(&file->parent);
+       event_unref(&file->event);
+       pool_unref(&file->metadata_pool);
 }
 
 void fs_file_close(struct fs_file *file)