diff options
-rw-r--r-- | Build/source/texk/kpathsea/line.c | 66 |
1 files changed, 33 insertions, 33 deletions
diff --git a/Build/source/texk/kpathsea/line.c b/Build/source/texk/kpathsea/line.c index b1edb16f02d..9d8e4e9eb13 100644 --- a/Build/source/texk/kpathsea/line.c +++ b/Build/source/texk/kpathsea/line.c @@ -1,6 +1,6 @@ /* line.c: return the next line from a file, or NULL. - Copyright 1992, 1993, 1995, 1996, 2008 Karl Berry. + Copyright 1992, 1993, 1995, 1996, 2008, 2013 Karl Berry. Copyright 1998, 1999, 2001, 2005 Olaf Weber. This library is free software; you can redistribute it and/or @@ -23,43 +23,43 @@ #define BLOCK_SIZE 75 char * -read_line (FILE*f) +read_line (FILE *f) { - int c; - unsigned limit = BLOCK_SIZE; - unsigned loc = 0; - char *line = (char*)xmalloc(limit); + int c; + unsigned limit = BLOCK_SIZE; + unsigned loc = 0; + char *line = xmalloc (limit); - while ((c = getc (f)) != EOF && c != '\n' && c != '\r') { - line[loc] = c; - loc++; + while ((c = getc (f)) != EOF && c != '\n' && c != '\r') { + line[loc] = c; + loc++; - /* By testing after the assignment, we guarantee that we'll always - have space for the null we append below. We know we always - have room for the first char, since we start with BLOCK_SIZE. */ - if (loc == limit) { - limit += BLOCK_SIZE; - line = (char*)xrealloc(line, limit); - } + /* By testing after the assignment, we guarantee that we'll always + have space for the null we append below. We know we always + have room for the first char, since we start with BLOCK_SIZE. */ + if (loc == limit) { + limit += BLOCK_SIZE; + line = xrealloc (line, limit); } + } - /* If we read anything, return it. This can't represent a last - ``line'' which doesn't end in a newline, but so what. */ - if (c != EOF) { - /* Terminate the string. We can't represent nulls in the file, - either. Again, it doesn't matter. */ - line[loc] = 0; - /* Absorb LF of a CRLF pair. */ - if (c == '\r') { - c = getc (f); - if (c != '\n') - ungetc (c, f); - } - } else { /* At end of file. */ - free(line); - line = NULL; + /* If we read anything, return it. This can't represent a last + ``line'' which doesn't end in a newline, but so what. */ + if (c != EOF) { + /* Terminate the string. We can't represent nulls in the file, + either. Again, it doesn't matter. */ + line[loc] = 0; + /* Absorb LF of a CRLF pair. */ + if (c == '\r') { + c = getc (f); + if (c != '\n') { + ungetc (c, f); + } } + } else { /* At end of file. */ + free (line); + line = NULL; + } - return line; + return line; } - |