]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-index: Give a better error message if index is readonly and log is tried to be...
authorTimo Sirainen <tss@iki.fi>
Tue, 19 Feb 2013 11:43:42 +0000 (13:43 +0200)
committerTimo Sirainen <tss@iki.fi>
Tue, 19 Feb 2013 11:43:42 +0000 (13:43 +0200)
src/lib-index/mail-transaction-log-file.c

index 97e22f5cf3c72c592294c4d17da79a4e251dc892..df16f43089a9a2a39d399787c81fb4ca69dcbe7a 100644 (file)
@@ -362,6 +362,13 @@ int mail_transaction_log_file_lock(struct mail_transaction_log_file *file)
        if (file->log->index->lock_method == FILE_LOCK_METHOD_DOTLOCK)
                return mail_transaction_log_file_dotlock(file);
 
+       if (file->log->index->readonly) {
+               mail_index_set_error(file->log->index,
+                       "Index is read-only, can't write-lock %s",
+                       file->filepath);
+               return -1;
+       }
+
        i_assert(file->file_lock == NULL);
        lock_timeout_secs = I_MIN(MAIL_TRANSACTION_LOG_LOCK_TIMEOUT,
                                  file->log->index->max_lock_timeout_secs);