]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-index: Convert mail_index_error.nodiskspace into an enum
authorMarco Bettini <marco.bettini@open-xchange.com>
Tue, 25 Jul 2023 13:42:38 +0000 (13:42 +0000)
committeraki.tuomi <aki.tuomi@open-xchange.com>
Fri, 6 Oct 2023 16:00:06 +0000 (16:00 +0000)
src/lib-index/mail-index-private.h
src/lib-index/mail-index-strmap.c
src/lib-index/mail-index.c
src/lib-index/mail-index.h

index 26f7e392a02e658d8d0b72eade4e6a0c9111f860..722f4a20cacdcc4f466f22c1b1fbd62564b83848 100644 (file)
@@ -195,10 +195,7 @@ struct mail_index_settings {
 struct mail_index_error {
        /* Human-readable error text */
        char *text;
-
-       /* Error happened because there's no disk space, i.e. syscall failed
-          with ENOSPC or EDQUOT. */
-       bool nodiskspace:1;
+       enum mail_index_error_code code;
 };
 
 struct mail_index {
index f10f0167db401ae086a80b8d7069c25bbd310cc9..fb925170682ecfcc444542906a62b9d2fd1b06f3 100644 (file)
@@ -122,7 +122,7 @@ mail_index_strmap_set_syscall_error(struct mail_index_strmap *strmap,
        i_assert(function != NULL);
 
        if (ENOSPACE(errno)) {
-               strmap->index->last_error.nodiskspace = TRUE;
+               strmap->index->last_error.code = MAIL_INDEX_ERROR_CODE_NO_SPACE;
                if ((strmap->index->flags &
                     MAIL_INDEX_OPEN_FLAG_NEVER_IN_MEMORY) == 0)
                        return;
index 1a1caa748394c22dace4fa3d6d0e34a87a36d8c3..0dec3f69bf02bfa29fa070b1322f7dca7a27617b 100644 (file)
@@ -1081,7 +1081,7 @@ void mail_index_file_set_syscall_error(struct mail_index *index,
        }
 
        if (ENOSPACE(errno)) {
-               index->last_error.nodiskspace = TRUE;
+               index->last_error.code = MAIL_INDEX_ERROR_CODE_NO_SPACE;
                if ((index->flags & MAIL_INDEX_OPEN_FLAG_NEVER_IN_MEMORY) == 0)
                        return;
        }
index 8d5bb2dcca7cc0a0b9c00f9d1d74ed2c46ce9f5d..2d77a5cfeaca64afccb295ebd063398d6bb15e76 100644 (file)
@@ -77,6 +77,11 @@ enum mail_index_mail_flags {
        MAIL_INDEX_MAIL_FLAG_UPDATE_MODSEQ      = 0x100
 };
 
+enum mail_index_error_code {
+       MAIL_INDEX_ERROR_CODE_NONE,
+       MAIL_INDEX_ERROR_CODE_NO_SPACE,
+};
+
 #define MAIL_INDEX_FLAGS_MASK \
        (MAIL_ANSWERED | MAIL_FLAGGED | MAIL_DELETED | MAIL_SEEN | MAIL_DRAFT)