mirror of
https://github.com/neovim/neovim.git
synced 2025-02-25 18:55:25 -06:00
Implement vim_str(n)save using xstrdup and strncpy/xmalloc
This commit is contained in:
parent
32d018b57e
commit
b63d2626ed
@ -46,14 +46,7 @@
|
||||
*/
|
||||
char_u *vim_strsave(char_u *string)
|
||||
{
|
||||
char_u *p;
|
||||
unsigned len;
|
||||
|
||||
len = (unsigned)STRLEN(string) + 1;
|
||||
p = alloc(len);
|
||||
if (p != NULL)
|
||||
memmove(p, string, (size_t)len);
|
||||
return p;
|
||||
return (char_u *)xstrdup((char *)string);
|
||||
}
|
||||
|
||||
/*
|
||||
@ -64,12 +57,7 @@ char_u *vim_strsave(char_u *string)
|
||||
*/
|
||||
char_u *vim_strnsave(char_u *string, int len)
|
||||
{
|
||||
char_u *p;
|
||||
|
||||
p = alloc((unsigned)(len + 1));
|
||||
STRNCPY(p, string, len);
|
||||
p[len] = NUL;
|
||||
return p;
|
||||
return (char_u *)strncpy(xmallocz(len), (char *)string, len);
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -1,7 +1,10 @@
|
||||
#ifndef NVIM_STRINGS_H
|
||||
#define NVIM_STRINGS_H
|
||||
char_u *vim_strsave(char_u *string);
|
||||
char_u *vim_strnsave(char_u *string, int len);
|
||||
|
||||
#include "func_attr.h"
|
||||
|
||||
char_u *vim_strsave(char_u *string) FUNC_ATTR_NONNULL_RET;
|
||||
char_u *vim_strnsave(char_u *string, int len) FUNC_ATTR_NONNULL_RET;
|
||||
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,
|
||||
|
Loading…
Reference in New Issue
Block a user