Mercurial > vim
changeset 10902:b69194114994 v8.0.0340
patch 8.0.0340: not checking return valud of dict_add()
commit https://github.com/vim/vim/commit/5acff71d3bd7796ee0a112ceb891af630b59304e
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun Feb 19 13:55:02 2017 +0100
patch 8.0.0340: not checking return valud of dict_add()
Problem: Not checking return valud of dict_add(). (Coverity)
Solution: Handle a failure.
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sun, 19 Feb 2017 14:00:05 +0100 |
parents | 886bce9d79d2 |
children | 099bd7beced6 |
files | src/buffer.c src/version.c |
diffstat | 2 files changed, 9 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/buffer.c +++ b/src/buffer.c @@ -888,8 +888,13 @@ init_changedtick(buf_T *buf) di->di_tv.v_type = VAR_NUMBER; di->di_tv.v_lock = VAR_FIXED; di->di_tv.vval.v_number = 0; - dict_add(buf->b_vars, di); - buf->b_changedtick = &di->di_tv.vval.v_number; + if (dict_add(buf->b_vars, di) == OK) + buf->b_changedtick = &di->di_tv.vval.v_number; + else + { + vim_free(di); + buf->b_changedtick = &buf->b_ct_val; + } } else #endif