From 41b282d3aec99578b8286c39d15025790df7e600 Mon Sep 17 00:00:00 2001 From: Paulo Matos Date: Sun, 17 Feb 2019 15:04:06 +0100 Subject: [PATCH] Merge pull request #2480 from LinkiTools/pmatos-clanganal-9 Avoid memcpy from null pointer in do_inotify_add --- racket/src/rktio/rktio_fs_change.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/racket/src/rktio/rktio_fs_change.c b/racket/src/rktio/rktio_fs_change.c index f6878a73ef..c19ff1d045 100644 --- a/racket/src/rktio/rktio_fs_change.c +++ b/racket/src/rktio/rktio_fs_change.c @@ -450,11 +450,17 @@ static int do_inotify_add(rktio_t *rktio, const char *filename) int new_size = (s->size ? (2 * s->size) : 32); rin_wd_t *new_wds; int i; + new_wds = (rin_wd_t *)malloc(sizeof(rin_wd_t) * new_size); - memcpy(new_wds, s->wds, s->size * sizeof(rin_wd_t)); - if (s->wds) free(s->wds); + + if (s->wds) { + memcpy(new_wds, s->wds, s->size * sizeof(rin_wd_t)); + free(s->wds); + } + s->wds = new_wds; s->size = new_size; + for (i = s->count; i < s->size; i++) { s->wds[i].wd = -1;