]> granicus.if.org Git - apache/commitdiff
Fix a segfault caused by mod_ext_filter when the external filter
authorJeff Trawick <trawick@apache.org>
Fri, 29 Dec 2000 14:11:12 +0000 (14:11 +0000)
committerJeff Trawick <trawick@apache.org>
Fri, 29 Dec 2000 14:11:12 +0000 (14:11 +0000)
program does not exist.

I wish I understood why I didn't hit this problem in the normal
case :(

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@87551 13f79535-47bb-0310-9956-ffa450edef68

CHANGES
modules/experimental/mod_ext_filter.c

diff --git a/CHANGES b/CHANGES
index 0fa7d517898ad626cfb6e87514f826e8763de4fc..6052e1f76aa6c7ba0d75421d86335510dab3a228 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,5 +1,8 @@
 Changes with Apache 2.0b1
 
+  *) Fix a segfault caused by mod_ext_filter when the external filter 
+     program does not exist. [Jeff Trawick]
+
   *) Fix an output truncation error when on an HTTP >= 1.0 request an
      object of size between DEFAULT_BUCKET_SIZE and AP_MIN_BYTES_TO_WRITE 
      was served through mod_charset_lite (or anything else that would
index 5040ab1cf94deba90524a076eab8fb30a28632b4..8f583420b3f1081b32b39a9648bf80e1a843e1ab 100644 (file)
@@ -421,7 +421,9 @@ static apr_status_t init_ext_filter_process(ap_filter_t *f)
      * be open.
      */
 
-    apr_register_cleanup(ctx->p, ctx->proc->in, NULL, ef_close_file);
+    apr_register_cleanup(ctx->p, ctx->proc->in, 
+                         apr_null_cleanup, /* other mechanism */
+                         ef_close_file);
 
 #if APR_FILES_AS_SOCKETS
     {