From 6d4fd4889adcdc9a88a5cf58722268dd307fc8be Mon Sep 17 00:00:00 2001 From: Jeff Trawick Date: Sat, 1 Dec 2001 01:22:01 +0000 Subject: [PATCH] fix a potential thread safety issue in mod_mime_magic (but to be honest I have no idea whether or not this path is ever used... it seems quite bizarre) git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92269 13f79535-47bb-0310-9956-ffa450edef68 --- modules/metadata/mod_mime_magic.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/modules/metadata/mod_mime_magic.c b/modules/metadata/mod_mime_magic.c index b4162bcf9c..7cdcf00561 100644 --- a/modules/metadata/mod_mime_magic.c +++ b/modules/metadata/mod_mime_magic.c @@ -1722,8 +1722,9 @@ static int match(request_rec *r, unsigned char *s, apr_size_t nbytes) static void mprint(request_rec *r, union VALUETYPE *p, struct magic *m) { - char *pp, *rt; + char *pp; unsigned long v; + char time_str[APR_CTIME_LEN]; switch (m->type) { case BYTE: @@ -1754,10 +1755,8 @@ static void mprint(request_rec *r, union VALUETYPE *p, struct magic *m) case DATE: case BEDATE: case LEDATE: - /* XXX: not multithread safe */ - pp = ctime((time_t *) & p->l); - if ((rt = strchr(pp, '\n')) != NULL) - *rt = '\0'; + apr_ctime(time_str, APR_USEC_PER_SEC * (apr_time_t)*(time_t *)&p->l); + pp = time_str; (void) magic_rsl_printf(r, m->desc, pp); return; default: -- 2.40.0