diff options
-rw-r--r-- | CHANGES | 3 | ||||
-rw-r--r-- | modules/metadata/mod_mime_magic.c | 15 |
2 files changed, 13 insertions, 5 deletions
@@ -2,6 +2,9 @@ Changes with Apache 2.1.5 [Remove entries to the current 2.0 section below, when backported] + *) mod_mime_magic: Handle CRLF-format magic files so that it works with + the default installation on Windows. [Jeff Trawick] + *) core: Allow multiple modules to register interest in a single configuration command. [Paul Querna] diff --git a/modules/metadata/mod_mime_magic.c b/modules/metadata/mod_mime_magic.c index 4cb096ea61..f4ca7207b2 100644 --- a/modules/metadata/mod_mime_magic.c +++ b/modules/metadata/mod_mime_magic.c @@ -947,12 +947,17 @@ static int apprentice(server_rec *s, apr_pool_t *p) /* parse it */ for (lineno = 1; apr_file_gets(line, BUFSIZ, f) == APR_SUCCESS; lineno++) { int ws_offset; + char *last = line + strlen(line) - 1; /* guaranteed that len >= 1 */ - /* delete newline */ - if (line[0]) { - line[strlen(line) - 1] = '\0'; - } - + /* delete newline and potential carriage return */ + if (*last == '\n') { + *last = '\0'; + --last; + } + if (*last == '\r') { + *last = '\0'; + } + /* skip leading whitespace */ ws_offset = 0; while (line[ws_offset] && apr_isspace(line[ws_offset])) { |