0
0
mirror of https://github.com/vim/vim.git synced 2025-07-04 23:07:33 -04:00

patch 8.2.0928: many type casts are used for vim_strnsave()

Problem:    Many type casts are used for vim_strnsave().
Solution:   Make the length argument size_t instead of int. (Ken Takata,
            closes #5633)  Remove some type casts.
This commit is contained in:
Bram Moolenaar 2020-06-07 20:49:05 +02:00
parent da84ac2a6f
commit df44a27b53
13 changed files with 22 additions and 20 deletions

View File

@ -763,7 +763,7 @@ au_event_disable(char *what)
save_ei = vim_strsave(p_ei); save_ei = vim_strsave(p_ei);
if (save_ei != NULL) if (save_ei != NULL)
{ {
new_ei = vim_strnsave(p_ei, (int)(STRLEN(p_ei) + STRLEN(what))); new_ei = vim_strnsave(p_ei, STRLEN(p_ei) + STRLEN(what));
if (new_ei != NULL) if (new_ei != NULL)
{ {
if (*what == ',' && *p_ei == NUL) if (*what == ',' && *p_ei == NUL)
@ -991,7 +991,7 @@ au_get_grouparg(char_u **argp)
; ;
if (p > arg) if (p > arg)
{ {
group_name = vim_strnsave(arg, (int)(p - arg)); group_name = vim_strnsave(arg, p - arg);
if (group_name == NULL) // out of memory if (group_name == NULL) // out of memory
return AUGROUP_ERROR; return AUGROUP_ERROR;
group = au_find_group(group_name); group = au_find_group(group_name);

View File

@ -2906,7 +2906,7 @@ may_invoke_callback(channel_T *channel, ch_part_T part)
{ {
// Copy the message into allocated memory (excluding the NL) // Copy the message into allocated memory (excluding the NL)
// and remove it from the buffer (including the NL). // and remove it from the buffer (including the NL).
msg = vim_strnsave(buf, (int)(nl - buf)); msg = vim_strnsave(buf, nl - buf);
channel_consume(channel, part, (int)(nl - buf) + 1); channel_consume(channel, part, (int)(nl - buf) + 1);
} }
} }
@ -3703,7 +3703,7 @@ channel_read_block(
{ {
// Copy the message into allocated memory and remove it from the // Copy the message into allocated memory and remove it from the
// buffer. // buffer.
msg = vim_strnsave(buf, (int)(nl - buf)); msg = vim_strnsave(buf, nl - buf);
channel_consume(channel, part, (int)(nl - buf) + 1); channel_consume(channel, part, (int)(nl - buf) + 1);
} }
} }

View File

@ -2555,7 +2555,7 @@ ExpandUserDefined(
{ {
if (ga_grow(&ga, 1) == FAIL) if (ga_grow(&ga, 1) == FAIL)
break; break;
((char_u **)ga.ga_data)[ga.ga_len] = vim_strnsave(s, (int)(e - s)); ((char_u **)ga.ga_data)[ga.ga_len] = vim_strnsave(s, e - s);
++ga.ga_len; ++ga.ga_len;
} }

View File

@ -779,7 +779,7 @@ get_literal_key(char_u **arg, typval_T *tv)
for (p = *arg; ASCII_ISALNUM(*p) || *p == '_' || *p == '-'; ++p) for (p = *arg; ASCII_ISALNUM(*p) || *p == '_' || *p == '-'; ++p)
; ;
tv->v_type = VAR_STRING; tv->v_type = VAR_STRING;
tv->vval.v_string = vim_strnsave(*arg, (int)(p - *arg)); tv->vval.v_string = vim_strnsave(*arg, p - *arg);
*arg = skipwhite(p); *arg = skipwhite(p);
return OK; return OK;

View File

@ -1301,7 +1301,7 @@ ex_diffpatch(exarg_T *eap)
if (curbuf->b_fname != NULL) if (curbuf->b_fname != NULL)
{ {
newname = vim_strnsave(curbuf->b_fname, newname = vim_strnsave(curbuf->b_fname,
(int)(STRLEN(curbuf->b_fname) + 4)); STRLEN(curbuf->b_fname) + 4);
if (newname != NULL) if (newname != NULL)
STRCAT(newname, ".new"); STRCAT(newname, ".new");
} }

View File

@ -2387,10 +2387,10 @@ ex_loadkeymap(exarg_T *eap)
{ {
kp = (kmap_T *)curbuf->b_kmap_ga.ga_data + curbuf->b_kmap_ga.ga_len; kp = (kmap_T *)curbuf->b_kmap_ga.ga_data + curbuf->b_kmap_ga.ga_len;
s = skiptowhite(p); s = skiptowhite(p);
kp->from = vim_strnsave(p, (int)(s - p)); kp->from = vim_strnsave(p, s - p);
p = skipwhite(s); p = skipwhite(s);
s = skiptowhite(p); s = skiptowhite(p);
kp->to = vim_strnsave(p, (int)(s - p)); kp->to = vim_strnsave(p, s - p);
if (kp->from == NULL || kp->to == NULL if (kp->from == NULL || kp->to == NULL
|| STRLEN(kp->from) + STRLEN(kp->to) >= KMAP_LLEN || STRLEN(kp->from) + STRLEN(kp->to) >= KMAP_LLEN

View File

@ -3139,7 +3139,7 @@ eval_index(
if (n1 >= len || n2 < 0 || n1 > n2) if (n1 >= len || n2 < 0 || n1 > n2)
s = NULL; s = NULL;
else else
s = vim_strnsave(s + n1, (int)(n2 - n1 + 1)); s = vim_strnsave(s + n1, n2 - n1 + 1);
} }
else else
{ {

View File

@ -5521,7 +5521,7 @@ find_some_match(typval_T *argvars, typval_T *rettv, matchtype_T type)
vim_free(li1->li_tv.vval.v_string); vim_free(li1->li_tv.vval.v_string);
li1->li_tv.vval.v_string = vim_strnsave(regmatch.startp[0], li1->li_tv.vval.v_string = vim_strnsave(regmatch.startp[0],
(int)(regmatch.endp[0] - regmatch.startp[0])); regmatch.endp[0] - regmatch.startp[0]);
li3->li_tv.vval.v_number = li3->li_tv.vval.v_number =
(varnumber_T)(regmatch.startp[0] - expr); (varnumber_T)(regmatch.startp[0] - expr);
li4->li_tv.vval.v_number = li4->li_tv.vval.v_number =
@ -5556,7 +5556,7 @@ find_some_match(typval_T *argvars, typval_T *rettv, matchtype_T type)
copy_tv(&li->li_tv, rettv); copy_tv(&li->li_tv, rettv);
else else
rettv->vval.v_string = vim_strnsave(regmatch.startp[0], rettv->vval.v_string = vim_strnsave(regmatch.startp[0],
(int)(regmatch.endp[0] - regmatch.startp[0])); regmatch.endp[0] - regmatch.startp[0]);
} }
else if (l != NULL) else if (l != NULL)
rettv->vval.v_number = idx; rettv->vval.v_number = idx;
@ -8861,7 +8861,7 @@ f_trim(typval_T *argvars, typval_T *rettv)
} }
} }
} }
rettv->vval.v_string = vim_strnsave(head, (int)(tail - head)); rettv->vval.v_string = vim_strnsave(head, tail - head);
} }
#ifdef FEAT_FLOAT #ifdef FEAT_FLOAT

View File

@ -906,7 +906,7 @@ do_highlight(
while (*linep && !VIM_ISWHITE(*linep) && *linep != '=') while (*linep && !VIM_ISWHITE(*linep) && *linep != '=')
++linep; ++linep;
vim_free(key); vim_free(key);
key = vim_strnsave_up(key_start, (int)(linep - key_start)); key = vim_strnsave_up(key_start, linep - key_start);
if (key == NULL) if (key == NULL)
{ {
error = TRUE; error = TRUE;

View File

@ -1291,7 +1291,7 @@ vim_strsave(char_u *string)
* shorter. * shorter.
*/ */
char_u * char_u *
vim_strnsave(char_u *string, int len) vim_strnsave(char_u *string, size_t len)
{ {
char_u *p; char_u *p;
@ -1538,7 +1538,7 @@ vim_strsave_up(char_u *string)
* This uses ASCII lower-to-upper case translation, language independent. * This uses ASCII lower-to-upper case translation, language independent.
*/ */
char_u * char_u *
vim_strnsave_up(char_u *string, int len) vim_strnsave_up(char_u *string, size_t len)
{ {
char_u *p1; char_u *p1;

View File

@ -32,14 +32,14 @@ void *mem_realloc(void *ptr, size_t size);
void do_outofmem_msg(size_t size); void do_outofmem_msg(size_t size);
void free_all_mem(void); void free_all_mem(void);
char_u *vim_strsave(char_u *string); char_u *vim_strsave(char_u *string);
char_u *vim_strnsave(char_u *string, int len); char_u *vim_strnsave(char_u *string, size_t len);
char_u *vim_memsave(char_u *p, size_t len); char_u *vim_memsave(char_u *p, size_t len);
char_u *vim_strsave_escaped(char_u *string, char_u *esc_chars); char_u *vim_strsave_escaped(char_u *string, char_u *esc_chars);
char_u *vim_strsave_escaped_ext(char_u *string, char_u *esc_chars, int cc, int bsl); char_u *vim_strsave_escaped_ext(char_u *string, char_u *esc_chars, int cc, int bsl);
int csh_like_shell(void); int csh_like_shell(void);
char_u *vim_strsave_shellescape(char_u *string, int do_special, int do_newline); char_u *vim_strsave_shellescape(char_u *string, int do_special, int do_newline);
char_u *vim_strsave_up(char_u *string); char_u *vim_strsave_up(char_u *string);
char_u *vim_strnsave_up(char_u *string, int len); char_u *vim_strnsave_up(char_u *string, size_t len);
void vim_strup(char_u *p); void vim_strup(char_u *p);
char_u *strup_save(char_u *orig); char_u *strup_save(char_u *orig);
char_u *strlow_save(char_u *orig); char_u *strlow_save(char_u *orig);

View File

@ -5097,7 +5097,7 @@ syn_cmd_region(
while (*key_end && !VIM_ISWHITE(*key_end) && *key_end != '=') while (*key_end && !VIM_ISWHITE(*key_end) && *key_end != '=')
++key_end; ++key_end;
vim_free(key); vim_free(key);
key = vim_strnsave_up(rest, (int)(key_end - rest)); key = vim_strnsave_up(rest, key_end - rest);
if (key == NULL) // out of memory if (key == NULL) // out of memory
{ {
rest = NULL; rest = NULL;
@ -5762,7 +5762,7 @@ syn_cmd_sync(exarg_T *eap, int syncing UNUSED)
arg_end = skiptowhite(arg_start); arg_end = skiptowhite(arg_start);
next_arg = skipwhite(arg_end); next_arg = skipwhite(arg_end);
vim_free(key); vim_free(key);
key = vim_strnsave_up(arg_start, (int)(arg_end - arg_start)); key = vim_strnsave_up(arg_start, arg_end - arg_start);
if (STRCMP(key, "CCOMMENT") == 0) if (STRCMP(key, "CCOMMENT") == 0)
{ {
if (!eap->skip) if (!eap->skip)

View File

@ -754,6 +754,8 @@ static char *(features[]) =
static int included_patches[] = static int included_patches[] =
{ /* Add new patch number below this line */ { /* Add new patch number below this line */
/**/
928,
/**/ /**/
927, 927,
/**/ /**/