diff options
Diffstat (limited to 'Build/source/texk/devnag/src/devnag.c')
-rw-r--r-- | Build/source/texk/devnag/src/devnag.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/Build/source/texk/devnag/src/devnag.c b/Build/source/texk/devnag/src/devnag.c index bc95c182472..4e48d7ab248 100644 --- a/Build/source/texk/devnag/src/devnag.c +++ b/Build/source/texk/devnag/src/devnag.c @@ -1656,8 +1656,7 @@ void dnproc(void) { wrong[2] = '\0'; err_ill(wrong); } - else - if (i == 5) put_ch(47); + else if (i == 5) put_ch(47); else put_ch((short)(i+20)); break; case end_of_line: @@ -1670,7 +1669,7 @@ void dnproc(void) { else put_ch('}'); dnready = TRUE; put_word(); - strcpy(inbuf, &inbuf[buf_idx]); + memmove(inbuf, inbuf+buf_idx, strlen(inbuf+buf_idx)+1); } break; case '}': @@ -1680,7 +1679,7 @@ void dnproc(void) { else put_ch(symbol); dnready = TRUE; put_word(); - strcpy(inbuf, &inbuf[buf_idx]); + memmove(inbuf, inbuf+buf_idx, strlen(inbuf+buf_idx)+1); } else put_ch(symbol); break; @@ -1698,7 +1697,7 @@ void dnproc(void) { sendchar('\n'); break; case '<': - put_syll(); + put_syll(); do { symbol = inp_ch(); if (symbol == end_of_line) symbol = '\n'; @@ -1794,7 +1793,7 @@ void dnproc(void) { fputs("Error: missing }", stderr); exit(1); default: - if (symbol < 0) err_ill('\0'); /* accented character inside dn mode */ + if (symbol < 0) err_ill('\0'); /* accented character inside dn mode */ i = 0; do { i++; } while ((i != 10) && (chset4[i-1] != symbol)); if (i == 10) put_ch(symbol); |