]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
indexer: Use a proper enum for request type
authorTimo Sirainen <timo.sirainen@open-xchange.com>
Tue, 25 Jan 2022 15:05:41 +0000 (16:05 +0100)
committertimo.sirainen <timo.sirainen@open-xchange.com>
Sun, 13 Feb 2022 10:23:26 +0000 (10:23 +0000)
This cleans up the code a bit.

src/indexer/indexer-queue.c
src/indexer/indexer-queue.h
src/indexer/worker-connection.c

index 51df7c09bf0455ba00d7784bd08d253f277c9726..1aa647ad7d6e46443d61d410d3eecc594d015375 100644 (file)
@@ -140,7 +140,7 @@ void indexer_queue_append(struct indexer_queue *queue, bool append,
        request = indexer_queue_append_request(queue, append, username, mailbox,
                                               session_id, max_recent_msgs,
                                               context);
-       request->index = TRUE;
+       request->type = INDEXER_REQUEST_TYPE_INDEX;
        indexer_queue_append_finish(queue);
 }
 
@@ -152,7 +152,7 @@ void indexer_queue_append_optimize(struct indexer_queue *queue,
 
        request = indexer_queue_append_request(queue, TRUE, username, mailbox,
                                               NULL, 0, context);
-       request->optimize = TRUE;
+       request->type = INDEXER_REQUEST_TYPE_OPTIMIZE;
        indexer_queue_append_finish(queue);
 }
 
index a9d5b9d1e7f2eaaad3351dfc21a37c9b41b0f7c0..2f9696dc73919c6b0e287e597a967b71a6a23610 100644 (file)
@@ -5,6 +5,13 @@
 
 typedef void indexer_queue_callback_t(int status, void *context);
 
+enum indexer_request_type {
+       /* index messages in the mailbox */
+       INDEXER_REQUEST_TYPE_INDEX,
+       /* optimize the mailbox */
+       INDEXER_REQUEST_TYPE_OPTIMIZE,
+};
+
 struct indexer_request {
        struct indexer_request *prev, *next;
 
@@ -13,10 +20,8 @@ struct indexer_request {
        char *session_id;
        unsigned int max_recent_msgs;
 
-       /* index messages in this mailbox */
-       bool index:1;
-       /* optimize this mailbox */
-       bool optimize:1;
+       enum indexer_request_type type;
+
        /* currently indexing this mailbox */
        bool working:1;
        /* after indexing is finished, add this request back to the queue and
index 19e2a4160f63e3743240cbda9a549302c0190d1f..522896f301a2e5569227297bde9d285c8a2df8a1 100644 (file)
@@ -120,7 +120,6 @@ void worker_connection_request(struct connection *conn,
                container_of(conn, struct worker_connection, conn);
 
        i_assert(worker_connection_is_connected(conn));
-       i_assert(request->index || request->optimize);
 
        if (worker->request_username == NULL)
                worker->request_username = i_strdup(request->username);
@@ -141,10 +140,14 @@ void worker_connection_request(struct connection *conn,
                if (request->session_id != NULL)
                        str_append_tabescaped(str, request->session_id);
                str_printfa(str, "\t%u\t", request->max_recent_msgs);
-               if (request->index)
+               switch (request->type) {
+               case INDEXER_REQUEST_TYPE_INDEX:
                        str_append_c(str, 'i');
-               if (request->optimize)
+                       break;
+               case INDEXER_REQUEST_TYPE_OPTIMIZE:
                        str_append_c(str, 'o');
+                       break;
+               }
                str_append_c(str, '\n');
                o_stream_nsend(conn->output, str_data(str), str_len(str));
        } T_END;