summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
d428857)
references a character one byte before the start of its input
buffer.
+ static int quoting = 0;
for (;;) {
switch (c = getchar ()) {
case EOF:
for (;;) {
switch (c = getchar ()) {
case EOF:
clearerr (stdin);
longjmp (sigenv, DONE);
case '\n':
clearerr (stdin);
longjmp (sigenv, DONE);
case '\n':
- if (cp[-1] == QUOTE) {
- cp[-1] = c;
+ if (quoting) {
+ *(cp - 1) = c;
+ if (c == QUOTE) {
+ quoting = 1;
+ } else {
+ quoting = 0;
+ }
if (cp < buffer + n)
*cp++ = c;
*cp = 0;
if (cp < buffer + n)
*cp++ = c;
*cp = 0;