Changeset 2310 for trunk/src


Ignore:
Timestamp:
Mar 1, 2009, 12:37:10 PM (16 years ago)
Author:
bird
Message:

kash: Deal with crlf in the script.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/kash/input.c

    r2290 r2310  
    221221                }
    222222                nr = -1;
     223        } else {
     224#ifdef SH_DEAL_WITH_CRLF
     225                char *cr = memchr(buf, '\r', nr);
     226                while (cr) {
     227                        size_t left = nr - (cr - buf);
     228                        if (left > 1 && cr[1] == '\n') {
     229                                left--;
     230                                nr--;
     231                                memmove(cr, cr + 1, left);
     232                                cr = memchr(cr, '\r', left);
     233                        } else {
     234                                cr = memchr(cr + 1, '\r', left);
     235                        }
     236                }
     237#endif
    223238        }
    224239        return nr;
Note: See TracChangeset for help on using the changeset viewer.