Patch from Steve Merrifield <steve@labyrinth.net.au> to make vi
use xmalloc
This commit is contained in:
parent
26f8e95d2d
commit
80f5ac7016
12
editors/vi.c
12
editors/vi.c
@ -19,7 +19,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
static const char vi_Version[] =
|
static const char vi_Version[] =
|
||||||
"$Id: vi.c,v 1.17 2001/11/12 16:57:26 kraai Exp $";
|
"$Id: vi.c,v 1.18 2001/11/17 06:57:42 andersen Exp $";
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* To compile for standalone use:
|
* To compile for standalone use:
|
||||||
@ -324,7 +324,7 @@ extern int vi_main(int argc, char **argv)
|
|||||||
#ifdef CONFIG_FEATURE_VI_CRASHME
|
#ifdef CONFIG_FEATURE_VI_CRASHME
|
||||||
(void) srand((long) getpid());
|
(void) srand((long) getpid());
|
||||||
#endif /* CONFIG_FEATURE_VI_CRASHME */
|
#endif /* CONFIG_FEATURE_VI_CRASHME */
|
||||||
status_buffer = (Byte *) malloc(200); // hold messages to user
|
status_buffer = (Byte *) xmalloc(200); // hold messages to user
|
||||||
#ifdef CONFIG_FEATURE_VI_READONLY
|
#ifdef CONFIG_FEATURE_VI_READONLY
|
||||||
vi_readonly = readonly = FALSE;
|
vi_readonly = readonly = FALSE;
|
||||||
if (strncmp(argv[0], "view", 4) == 0) {
|
if (strncmp(argv[0], "view", 4) == 0) {
|
||||||
@ -2492,7 +2492,7 @@ static Byte *new_screen(int ro, int co)
|
|||||||
if (screen != 0)
|
if (screen != 0)
|
||||||
free(screen);
|
free(screen);
|
||||||
screensize = ro * co + 8;
|
screensize = ro * co + 8;
|
||||||
screen = (Byte *) malloc(screensize);
|
screen = (Byte *) xmalloc(screensize);
|
||||||
// initialize the new screen. assume this will be a empty file.
|
// initialize the new screen. assume this will be a empty file.
|
||||||
screen_erase();
|
screen_erase();
|
||||||
// non-existant text[] lines start with a tilde (~).
|
// non-existant text[] lines start with a tilde (~).
|
||||||
@ -2510,7 +2510,7 @@ static Byte *new_text(int size)
|
|||||||
//text -= 4;
|
//text -= 4;
|
||||||
free(text);
|
free(text);
|
||||||
}
|
}
|
||||||
text = (Byte *) malloc(size + 8);
|
text = (Byte *) xmalloc(size + 8);
|
||||||
memset(text, '\0', size); // clear new text[]
|
memset(text, '\0', size); // clear new text[]
|
||||||
//text += 4; // leave some room for "oops"
|
//text += 4; // leave some room for "oops"
|
||||||
textend = text + size - 1;
|
textend = text + size - 1;
|
||||||
@ -3028,7 +3028,7 @@ static void start_new_cmd_q(Byte c)
|
|||||||
if (last_modifying_cmd != 0)
|
if (last_modifying_cmd != 0)
|
||||||
free(last_modifying_cmd);
|
free(last_modifying_cmd);
|
||||||
// get buffer for new cmd
|
// get buffer for new cmd
|
||||||
last_modifying_cmd = (Byte *) malloc(BUFSIZ);
|
last_modifying_cmd = (Byte *) xmalloc(BUFSIZ);
|
||||||
memset(last_modifying_cmd, '\0', BUFSIZ); // clear new cmd queue
|
memset(last_modifying_cmd, '\0', BUFSIZ); // clear new cmd queue
|
||||||
// if there is a current cmd count put it in the buffer first
|
// if there is a current cmd count put it in the buffer first
|
||||||
if (cmdcnt > 0)
|
if (cmdcnt > 0)
|
||||||
@ -3084,7 +3084,7 @@ static Byte *text_yank(Byte * p, Byte * q, int dest) // copy text into a registe
|
|||||||
if (t != 0) { // if already a yank register
|
if (t != 0) { // if already a yank register
|
||||||
free(t); // free it
|
free(t); // free it
|
||||||
}
|
}
|
||||||
t = (Byte *) malloc(cnt + 1); // get a new register
|
t = (Byte *) xmalloc(cnt + 1); // get a new register
|
||||||
memset(t, '\0', cnt + 1); // clear new text[]
|
memset(t, '\0', cnt + 1); // clear new text[]
|
||||||
strncpy((char *) t, (char *) p, cnt); // copy text[] into bufer
|
strncpy((char *) t, (char *) p, cnt); // copy text[] into bufer
|
||||||
reg[dest] = t;
|
reg[dest] = t;
|
||||||
|
Loading…
Reference in New Issue
Block a user