summaryrefslogtreecommitdiffstats
path: root/server/log.c
diff options
context:
space:
mode:
authorJeff Trawick <trawick@apache.org>2013-09-27 20:01:15 +0200
committerJeff Trawick <trawick@apache.org>2013-09-27 20:01:15 +0200
commit86b710bb806b970c71a4419d372ca4bd95730ac4 (patch)
tree2a958f77912bc6acd4f314bc5ed9c45bdbe77a18 /server/log.c
parentWhen adding APR_EOL_STR in the error log record before calling (diff)
downloadapache2-86b710bb806b970c71a4419d372ca4bd95730ac4.tar.xz
apache2-86b710bb806b970c71a4419d372ca4bd95730ac4.zip
Fix the null device name on Windows so that stderr can be sent
to the bit bucket. (This logic is always hit when using an error log provider.) git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1527008 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'server/log.c')
-rw-r--r--server/log.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/server/log.c b/server/log.c
index d2318b81da..9466847d98 100644
--- a/server/log.c
+++ b/server/log.c
@@ -430,9 +430,16 @@ int ap_open_logs(apr_pool_t *pconf, apr_pool_t *p /* plog */,
* XXX: This is BS - /dev/null is non-portable
* errno-as-apr_status_t is also non-portable
*/
- if (replace_stderr && freopen("/dev/null", "w", stderr) == NULL) {
+
+#ifdef WIN32
+#define NULL_DEVICE "nul"
+#else
+#define NULL_DEVICE "/dev/null"
+#endif
+
+ if (replace_stderr && freopen(NULL_DEVICE, "w", stderr) == NULL) {
ap_log_error(APLOG_MARK, APLOG_CRIT, errno, s_main, APLOGNO(00093)
- "unable to replace stderr with /dev/null");
+ "unable to replace stderr with %s", NULL_DEVICE);
}
for (virt = s_main->next; virt; virt = virt->next) {