]> git.ipfire.org Git - thirdparty/apache/httpd.git/commitdiff
parms needs err_directive incase execute_now() returns non-NULL (e.g. if LoadModule...
authorDoug MacEachern <dougm@apache.org>
Sun, 25 Jun 2000 22:50:10 +0000 (22:50 +0000)
committerDoug MacEachern <dougm@apache.org>
Sun, 25 Jun 2000 22:50:10 +0000 (22:50 +0000)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85692 13f79535-47bb-0310-9956-ffa450edef68

server/config.c

index fae6451c8beea51e79c180dcd9c548be1c3aee32..74b49e72ebd8055e878e0f30d9c2c4b835a46afc 100644 (file)
@@ -863,11 +863,18 @@ static const char * ap_build_config_sub(ap_pool_t *p, ap_pool_t *temp_pool,
        return NULL;
     }
 
+    newdir = ap_pcalloc(p, sizeof(ap_directive_t));
+    newdir->filename = parms->config_file->name;
+    newdir->line_num = parms->config_file->line_number;
+    newdir->directive = cmd_name;
+    newdir->args = ap_pstrdup(p, args);
+
     if ((cmd = ap_find_command_in_modules(cmd_name, &mod)) != NULL) {
         if (cmd->req_override & EXEC_ON_READ) {
             const char *retval;
             ap_directive_t *sub_tree = NULL;
 
+            parms->err_directive = newdir;
             retval = execute_now(cmd_name, args, parms, p, temp_pool, 
                                  &sub_tree, *curr_parent);
             if (*current) {
@@ -892,12 +899,6 @@ static const char * ap_build_config_sub(ap_pool_t *p, ap_pool_t *temp_pool,
         }
     }
 
-    newdir = ap_pcalloc(p, sizeof(ap_directive_t));
-    newdir->filename = parms->config_file->name;
-    newdir->line_num = parms->config_file->line_number;
-    newdir->directive = cmd_name;
-    newdir->args = ap_pstrdup(p, args);
-
     if (cmd_name[0] == '<') {
         if (cmd_name[1] != '/') {
             (*current) = ap_add_node(curr_parent, *current, newdir, 1);