]> 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)
committerGitLab <gitlab@git.dovecot.net>
Thu, 24 Nov 2016 21:27:16 +0000 (23:27 +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 d1e32ed1dd35d6e5cba7b0519cdbecf05cb97a44..c3bbce0e8bf26abdbc54eab5d1aa62dc2e4d2973 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 9a962840f44d6af487d8f260d9ad8c857cb23b70..b9bd318ab1cbe7fab9dee25faae7a6281b6d144e 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 455f73daf465421d54fbd3ccf055aad2282efc49..37af819b09fe7aef54561142a3981c71babbcb1e 100644 (file)
@@ -300,9 +300,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