comparison src/evalfunc.c @ 15271:a6319aca721b v8.1.0644

patch 8.1.0644: finding next sign ID is inefficient commit https://github.com/vim/vim/commit/6436cd83f90a0efc326798792e49e8ff96a43dce Author: Bram Moolenaar <Bram@vim.org> Date: Thu Dec 27 00:28:33 2018 +0100 patch 8.1.0644: finding next sign ID is inefficient Problem: Finding next sign ID is inefficient. Solution: Add next_sign_id. (Yegappan Lakshmanan, closes https://github.com/vim/vim/issues/3717)
author Bram Moolenaar <Bram@vim.org>
date Thu, 27 Dec 2018 00:30:06 +0100
parents 8d7a3fd70ff4
children 54457fc4af0b
comparison
equal deleted inserted replaced
15270:18c956b49ee5 15271:a6319aca721b
4432 get_buffer_signs(buf_T *buf, list_T *l) 4432 get_buffer_signs(buf_T *buf, list_T *l)
4433 { 4433 {
4434 signlist_T *sign; 4434 signlist_T *sign;
4435 dict_T *d; 4435 dict_T *d;
4436 4436
4437 FOR_ALL_SIGNS_IN_BUF(buf) 4437 FOR_ALL_SIGNS_IN_BUF(buf, sign)
4438 { 4438 {
4439 if ((d = sign_get_info(sign)) != NULL) 4439 if ((d = sign_get_info(sign)) != NULL)
4440 list_append_dict(l, d); 4440 list_append_dict(l, d);
4441 } 4441 }
4442 } 4442 }
11413 if ((di = dict_find(dict, (char_u *)"group", -1)) != NULL) 11413 if ((di = dict_find(dict, (char_u *)"group", -1)) != NULL)
11414 { 11414 {
11415 group = tv_get_string_chk(&di->di_tv); 11415 group = tv_get_string_chk(&di->di_tv);
11416 if (group == NULL) 11416 if (group == NULL)
11417 return; 11417 return;
11418 if (*group == '\0') // empty string means global group
11419 group = NULL;
11418 } 11420 }
11419 } 11421 }
11420 } 11422 }
11421 11423
11422 sign_get_placed(buf, lnum, sign_id, group, rettv->vval.v_list); 11424 sign_get_placed(buf, lnum, sign_id, group, rettv->vval.v_list);