From: Sascha Silbe Date: Sun, 24 Jun 2012 16:29:24 +0000 (+0200) Subject: lib: fix NULL checks for filenames iterators X-Git-Tag: 0.15_rc1~257 X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=commitdiff_plain;h=8dd4e9770ec12de9b2e6fc53259375b2d1720f38 lib: fix NULL checks for filenames iterators The API documentation (notmuch.h) states that the parameter may be NULL, but the implementation only checked the current element, potentially dereferencing a NULL pointer in the process. Signed-off-by: Sascha Silbe --- diff --git a/lib/filenames.c b/lib/filenames.c index f1ea2430..4f7c0d85 100644 --- a/lib/filenames.c +++ b/lib/filenames.c @@ -54,7 +54,7 @@ notmuch_filenames_valid (notmuch_filenames_t *filenames) const char * notmuch_filenames_get (notmuch_filenames_t *filenames) { - if (filenames->iterator == NULL) + if ((filenames == NULL) || (filenames->iterator == NULL)) return NULL; return filenames->iterator->string; @@ -63,7 +63,7 @@ notmuch_filenames_get (notmuch_filenames_t *filenames) void notmuch_filenames_move_to_next (notmuch_filenames_t *filenames) { - if (filenames->iterator == NULL) + if ((filenames == NULL) || (filenames->iterator == NULL)) return; filenames->iterator = filenames->iterator->next;