From: Marco Bettini Date: Tue, 25 Jul 2023 13:46:47 +0000 (+0000) Subject: lib-index: Replace mail_index_get_error_message() with mail_index_get_last_error() X-Git-Tag: 2.4.0~2555 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=57e584cfe9e66f46646bd9b1c6c67f20b52d11a0;p=thirdparty%2Fdovecot%2Fcore.git lib-index: Replace mail_index_get_error_message() with mail_index_get_last_error() --- diff --git a/src/lib-index/mail-index-private.h b/src/lib-index/mail-index-private.h index 5320bd53f4..55055c6de0 100644 --- a/src/lib-index/mail-index-private.h +++ b/src/lib-index/mail-index-private.h @@ -270,7 +270,7 @@ struct mail_index { /* Module-specific contexts. */ ARRAY(union mail_index_module_context *) module_contexts; - /* Last error returned by mail_index_get_error_message(). + /* Last error returned by mail_index_get_last_error(). Cleared by mail_index_reset_error(). */ struct mail_index_error last_error; /* Timestamp when mmap() failure was logged the last time. This is used @@ -417,7 +417,7 @@ unsigned int mail_index_map_ext_hdr_offset(unsigned int name_len); void mail_index_fsck_locked(struct mail_index *index); /* Log an error and set it as the index's current error that is available - with mail_index_get_error_message(). */ + with mail_index_get_last_error(). */ void mail_index_set_error(struct mail_index *index, const char *fmt, ...) ATTR_FORMAT(2, 3) ATTR_COLD; void mail_index_set_error_code(struct mail_index *index, diff --git a/src/lib-index/mail-index.c b/src/lib-index/mail-index.c index 771d7fb3db..47af0751ff 100644 --- a/src/lib-index/mail-index.c +++ b/src/lib-index/mail-index.c @@ -1119,8 +1119,11 @@ void mail_index_file_set_syscall_error(struct mail_index *index, } } -const char *mail_index_get_error_message(struct mail_index *index) +const char *mail_index_get_last_error(struct mail_index *index, + enum mail_index_error_code *code_r) { + if (code_r != NULL) + *code_r = index->last_error.code; return index->last_error.text; } diff --git a/src/lib-index/mail-index.h b/src/lib-index/mail-index.h index 7e2c0418f4..f296c293d0 100644 --- a/src/lib-index/mail-index.h +++ b/src/lib-index/mail-index.h @@ -731,7 +731,8 @@ void mail_index_update_header(struct mail_index_transaction *t, /* Returns the full error message for last error. This message may contain paths etc. so it shouldn't be shown to users. */ -const char *mail_index_get_error_message(struct mail_index *index); +const char *mail_index_get_last_error(struct mail_index *index, + enum mail_index_error_code *error_r); /* Reset the error message. */ void mail_index_reset_error(struct mail_index *index); diff --git a/src/lib-storage/list/mail-storage-list-index-rebuild.c b/src/lib-storage/list/mail-storage-list-index-rebuild.c index dd0f3ec4a2..792f7977fb 100644 --- a/src/lib-storage/list/mail-storage-list-index-rebuild.c +++ b/src/lib-storage/list/mail-storage-list-index-rebuild.c @@ -126,7 +126,7 @@ static bool try_get_mailbox_name(struct mail_storage_list_index_rebuild_ctx *ctx e_debug(ctx->storage->event, "Cannot open mailbox index at %s: Not found", path); } else if (rc < 0) { e_debug(ctx->storage->event, "Cannot open mailbox index at %s: %s", - path, mail_index_get_error_message(index)); + path, mail_index_get_last_error(index, NULL)); } mail_index_free(&index); return ret; diff --git a/src/lib-storage/mail-storage.c b/src/lib-storage/mail-storage.c index 1ed9bf3716..c84e7dce8c 100644 --- a/src/lib-storage/mail-storage.c +++ b/src/lib-storage/mail-storage.c @@ -794,7 +794,7 @@ void mail_storage_set_index_error(struct mail_storage *storage, mail_storage_set_internal_error(storage); /* use the lib-index's error as our internal error string */ - index_error = mail_index_get_error_message(index); + index_error = mail_index_get_last_error(index, NULL); if (index_error == NULL) index_error = "BUG: Unknown internal index error"; storage->last_internal_error = i_strdup(index_error); diff --git a/src/plugins/quota/quota-count.c b/src/plugins/quota/quota-count.c index b86f77ca95..26556797e1 100644 --- a/src/plugins/quota/quota-count.c +++ b/src/plugins/quota/quota-count.c @@ -311,7 +311,7 @@ static int quota_count_recalculate_box(struct mailbox *box, *error_r = t_strdup_printf( "Couldn't commit mail index transaction for %s: %s", box->vname, - mail_index_get_error_message(box->view->index)); + mail_index_get_last_error(box->view->index, NULL)); return -1; } /* getting the vsize now forces its recalculation */