]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
global: Avoid unnecessary unsigned integer wraps.
authorTimo Sirainen <timo.sirainen@dovecot.fi>
Sat, 19 Nov 2016 00:00:25 +0000 (02:00 +0200)
committerTimo Sirainen <timo.sirainen@dovecot.fi>
Fri, 25 Nov 2016 13:28:48 +0000 (15:28 +0200)
Avoids complains from clang -fsanitize=integer

src/indexer/master-connection.c
src/lib-mail/test-istream-header-filter.c
src/lib-storage/index/mbox/istream-raw-mbox.c

index 2f516a218ab9d9f271682b44f9852406cae4ea77..87baa58442f159d76b911c6e4a1c476746fc447e 100644 (file)
@@ -88,7 +88,7 @@ index_mailbox_precache(struct master_connection *conn, struct mailbox *box)
                                  metadata.precache_fields, NULL);
        mail_search_args_unref(&search_args);
 
-       max = status.messages - seq + 1;
+       max = status.messages + 1 - seq;
        while (mailbox_search_next(ctx, &mail)) {
                mail_precache(mail);
                if (++counter % 100 == 0) {
index 14bdb67f90ed5bb6fef9cdf3ebbb79e2da9133ee..8747d564b01d2bf220cb286323ecdec9b18caed7 100644 (file)
@@ -499,7 +499,7 @@ static void test_istream_hide_body(void)
        for (i = 0; i < N_ELEMENTS(tests); i++) {
                istream = test_istream_create(tests[i].input);
                test_istream_run(istream,
-                                strlen(tests[i].input) + tests[i].extra,
+                                (int)strlen(tests[i].input) + tests[i].extra,
                                 tests[i].output,
                                 HEADER_FILTER_EXCLUDE |
                                 HEADER_FILTER_CRLF_PRESERVE |
index 5b1ae308698f8ad007ade4051d344ec52d2d2e17..aa59a76354a0c3320f71d03320674f4f857ed4dc 100644 (file)
@@ -301,9 +301,9 @@ static ssize_t i_stream_raw_mbox_read(struct istream_private *stream)
                                        from_start_pos = i - 6;
                                }
 
-                               if (rstream->hdr_offset + rstream->mail_size ==
-                                   stream->istream.v_offset + from_start_pos ||
-                                   rstream->mail_size == (uoff_t)-1) {
+                               if (rstream->mail_size == (uoff_t)-1 ||
+                                   rstream->hdr_offset + rstream->mail_size ==
+                                   stream->istream.v_offset + from_start_pos) {
                                        from_after_pos = i;
                                        if (ret == -2) {
                                                /* even if we don't have the