]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib: Make io_loop_move_*(NULL) no-op
authorAki Tuomi <aki.tuomi@dovecot.fi>
Thu, 23 Aug 2018 11:58:44 +0000 (14:58 +0300)
committerAki Tuomi <aki.tuomi@open-xchange.com>
Fri, 24 Aug 2018 06:55:18 +0000 (06:55 +0000)
src/lib/ioloop.c

index 40bc2c4ad1691bfc6af0d4007da16a9b4a9b25f9..a7416b0109644807a3c5dcb05edee8611e29e892 100644 (file)
@@ -1095,6 +1095,9 @@ struct io *io_loop_move_io_to(struct ioloop *ioloop, struct io **_io)
        struct io *old_io = *_io;
        struct io_file *old_io_file, *new_io_file;
 
+       if (old_io == NULL)
+               return NULL;
+
        i_assert((old_io->condition & IO_NOTIFY) == 0);
 
        if (old_io->ioloop == ioloop)
@@ -1130,7 +1133,7 @@ struct timeout *io_loop_move_timeout_to(struct ioloop *ioloop,
 {
        struct timeout *new_to, *old_to = *_timeout;
 
-       if (old_to->ioloop == ioloop)
+       if (old_to == NULL || old_to->ioloop == ioloop)
                return old_to;
 
        new_to = timeout_copy(old_to, ioloop);