]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
cleanup
authorTimo Sirainen <tss@iki.fi>
Sat, 1 May 2004 16:42:10 +0000 (19:42 +0300)
committerTimo Sirainen <tss@iki.fi>
Sat, 1 May 2004 16:42:10 +0000 (19:42 +0300)
--HG--
branch : HEAD

src/lib-index/mail-index.c
src/lib-index/mail-index.h

index 26660799180eba94e9ffe004213f52fe15484d83..a25e9d40592b2fc3a8d0391711f1141dc139c266 100644 (file)
@@ -655,32 +655,30 @@ void mail_index_set_inconsistent(struct mail_index *index)
        index->indexid = 0;
 }
 
-int mail_index_mark_corrupted(struct mail_index *index)
+void mail_index_mark_corrupted(struct mail_index *index)
 {
        struct mail_index_header hdr;
 
+       mail_index_set_inconsistent(index);
+
        if (index->readonly)
-               return 0;
+               return;
 
        /* make sure we can write the header */
        if (!MAIL_INDEX_MAP_IS_IN_MEMORY(index->map)) {
                if (mprotect(index->map->mmap_base, sizeof(hdr),
                             PROT_READ | PROT_WRITE) < 0) {
                        mail_index_set_syscall_error(index, "mprotect()");
-                       return -1;
+                       return;
                }
        }
 
        hdr = *index->hdr;
        hdr.flags |= MAIL_INDEX_HDR_FLAG_CORRUPTED;
-       if (mail_index_write_header(index, &hdr) < 0)
-               return -1;
-
-       if (fsync(index->fd) < 0)
-               return mail_index_set_syscall_error(index, "fsync()");
-
-       mail_index_set_inconsistent(index);
-       return 0;
+       if (mail_index_write_header(index, &hdr) == 0) {
+               if (fsync(index->fd) < 0)
+                       mail_index_set_syscall_error(index, "fsync()");
+       }
 }
 
 int mail_index_set_syscall_error(struct mail_index *index,
index 119ccf1affb8297d24dd99669ba6f83bd2ea2b4f..d9b42a270c2d6189d441797646913a4e7e4d3438 100644 (file)
@@ -213,7 +213,7 @@ int mail_index_sync_have_more(struct mail_index_sync_ctx *ctx);
 int mail_index_sync_end(struct mail_index_sync_ctx *ctx);
 
 /* Mark index file corrupted. Invalidates all views. */
-int mail_index_mark_corrupted(struct mail_index *index);
+void mail_index_mark_corrupted(struct mail_index *index);
 /* Check and fix any found problems. If index is broken beyond repair, calls
    mail_index_reset() and returns 0. Otherwise returns -1 if there was some
    I/O error or 1 if everything went ok. */