Mercurial > vim
changeset 17308:d04de6c49f59 v8.1.1653
patch 8.1.1653: ubsan warns for possibly passing NULL pointer
commit https://github.com/vim/vim/commit/0d07155c8bbaca1a527b79da358438253a60839f
Author: Bram Moolenaar <Bram@vim.org>
Date: Mon Jul 8 22:04:03 2019 +0200
patch 8.1.1653: ubsan warns for possibly passing NULL pointer
Problem: Ubsan warns for possibly passing NULL pointer.
Solution: Skip code when length is zero. (Dominique Pelle, closes https://github.com/vim/vim/issues/4631)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Mon, 08 Jul 2019 22:15:04 +0200 |
parents | e62f7f537c87 |
children | bd871e780f34 |
files | src/channel.c src/version.c |
diffstat | 2 files changed, 4 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/channel.c +++ b/src/channel.c @@ -3990,7 +3990,7 @@ channel_send( writeq_T *last = wq->wq_prev; /* append to the last entry */ - if (ga_grow(&last->wq_ga, len) == OK) + if (len > 0 && ga_grow(&last->wq_ga, len) == OK) { mch_memmove((char *)last->wq_ga.ga_data + last->wq_ga.ga_len, @@ -4012,7 +4012,7 @@ channel_send( wq->wq_prev->wq_next = last; wq->wq_prev = last; ga_init2(&last->wq_ga, 1, 1000); - if (ga_grow(&last->wq_ga, len) == OK) + if (len > 0 && ga_grow(&last->wq_ga, len) == OK) { mch_memmove(last->wq_ga.ga_data, buf, len); last->wq_ga.ga_len = len;