summaryrefslogtreecommitdiffstats
path: root/gnu/lib/libdialog/kernel.c
diff options
context:
space:
mode:
authorache <ache@FreeBSD.org>1995-03-24 17:59:48 +0000
committerache <ache@FreeBSD.org>1995-03-24 17:59:48 +0000
commitf362fa39c5d219c09612e83f1458ceffd6663366 (patch)
treeae13072b2c5edc5ecb878f99b6d29344fad6eea8 /gnu/lib/libdialog/kernel.c
parent89bccb0c6fab19c5c24cc80c7de0343b63d547c3 (diff)
downloadFreeBSD-src-f362fa39c5d219c09612e83f1458ceffd6663366.zip
FreeBSD-src-f362fa39c5d219c09612e83f1458ceffd6663366.tar.gz
Get rid of strtok(), it is depricated inside libs
Diffstat (limited to 'gnu/lib/libdialog/kernel.c')
-rw-r--r--gnu/lib/libdialog/kernel.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/gnu/lib/libdialog/kernel.c b/gnu/lib/libdialog/kernel.c
index d3793037..defb321 100644
--- a/gnu/lib/libdialog/kernel.c
+++ b/gnu/lib/libdialog/kernel.c
@@ -167,7 +167,7 @@ void attr_clear(WINDOW *win, int height, int width, chtype attr)
*/
void print_autowrap(WINDOW *win, unsigned char *prompt, int height, int width, int maxwidth, int y, int x, int center, int rawmode)
{
- int first = 1, cur_x, cur_y, i;
+ int cur_x, cur_y, i;
unsigned char tempstr[MAX_LEN+1], *word, *tempptr, *tempptr1;
chtype ostuff[132], attrs = 0, init_bottom = 0;
@@ -244,13 +244,15 @@ void print_autowrap(WINDOW *win, unsigned char *prompt, int height, int width, i
waddstr(win, tempstr);
}
else {
+ char *p = tempstr;
+
/* Print prompt word by word, wrap around if necessary */
- while ((word = strtok(first ? tempstr : NULL, "\t\n ")) != NULL) {
+ while ((word = strsep(&p, "\t\n ")) != NULL) {
int loop;
unsigned char sc;
- if (first) /* First iteration */
- first = 0;
+ if (*word == '\0')
+ continue;
do {
loop = 0;
if (cur_x+strlen(word) >= width+1) { /* wrap around to next line */
OpenPOWER on IntegriCloud