comparison src/popupwin.c @ 17421:73e81cd9e6cb v8.1.1709

patch 8.1.1709: Coverity warns for possibly using a NULL pointer commit https://github.com/vim/vim/commit/403d090e39abdc741c1b2ec0a05361cffd348289 Author: Bram Moolenaar <Bram@vim.org> Date: Wed Jul 17 21:37:32 2019 +0200 patch 8.1.1709: Coverity warns for possibly using a NULL pointer Problem: Coverity warns for possibly using a NULL pointer. Solution: Make sure no NULL pointer is used.
author Bram Moolenaar <Bram@vim.org>
date Wed, 17 Jul 2019 21:45:05 +0200
parents aa4532c1d001
children 6e756ad5ef1a
comparison
equal deleted inserted replaced
17420:37a230c53b08 17421:73e81cd9e6cb
514 set_padding_border(dict, wp->w_popup_border, "border", 1); 514 set_padding_border(dict, wp->w_popup_border, "border", 1);
515 515
516 di = dict_find(dict, (char_u *)"borderhighlight", -1); 516 di = dict_find(dict, (char_u *)"borderhighlight", -1);
517 if (di != NULL) 517 if (di != NULL)
518 { 518 {
519 if (di->di_tv.v_type != VAR_LIST) 519 if (di->di_tv.v_type != VAR_LIST || di->di_tv.vval.v_list == NULL)
520 emsg(_(e_listreq)); 520 emsg(_(e_listreq));
521 else 521 else
522 { 522 {
523 list_T *list = di->di_tv.vval.v_list; 523 list_T *list = di->di_tv.vval.v_list;
524 listitem_T *li; 524 listitem_T *li;
525 int i; 525 int i;
526 526
527 if (list != NULL) 527 for (i = 0, li = list->lv_first; i < 4 && i < list->lv_len;
528 for (i = 0, li = list->lv_first; i < 4 && i < list->lv_len; 528 ++i, li = li->li_next)
529 ++i, li = li->li_next) 529 {
530 { 530 str = tv_get_string(&li->li_tv);
531 str = tv_get_string(&li->li_tv); 531 if (*str != NUL)
532 if (*str != NUL) 532 wp->w_border_highlight[i] = vim_strsave(str);
533 wp->w_border_highlight[i] = vim_strsave(str); 533 }
534 }
535 if (list->lv_len == 1 && wp->w_border_highlight[0] != NULL) 534 if (list->lv_len == 1 && wp->w_border_highlight[0] != NULL)
536 for (i = 1; i < 4; ++i) 535 for (i = 1; i < 4; ++i)
537 wp->w_border_highlight[i] = 536 wp->w_border_highlight[i] =
538 vim_strsave(wp->w_border_highlight[0]); 537 vim_strsave(wp->w_border_highlight[0]);
539 } 538 }
540 } 539 }
541 540
542 di = dict_find(dict, (char_u *)"borderchars", -1); 541 di = dict_find(dict, (char_u *)"borderchars", -1);