Return to line.c CVS log | Up to [local] / src / usr.bin / mg |
version 1.37, 2005/12/20 06:17:36 | version 1.38, 2006/05/27 21:20:11 | ||
---|---|---|---|
|
|
||
undo_add_boundary(); | undo_add_boundary(); | ||
return (TRUE); | return (TRUE); | ||
} | } | ||
/* | |||
* Allocate and return the supplied line as a C string | |||
*/ | |||
char * | |||
linetostr(const struct line *ln) | |||
{ | |||
size_t len; | |||
char *line; | |||
len = llength(ln); | |||
if (len == SIZE_MAX) /* (len + 1) overflow */ | |||
return (NULL); | |||
if ((line = malloc(len + 1)) == NULL) | |||
return (NULL); | |||
(void)memcpy(line, ltext(ln), len); | |||
line[len] = '\0'; | |||
return (line); | |||
} |