[prev in list] [next in list] [prev in thread] [next in thread]
List: apache-cvs
Subject: cvs commit: httpd-2.0/server config.c
From: geoff () apache ! org
Date: 2004-01-30 19:43:03
Message-ID: 20040130194303.48014.qmail () minotaur ! apache ! org
[Download RAW message or body]
geoff 2004/01/30 11:43:03
Modified: server config.c
Log:
Keep focus of ITERATE and ITERATE2 on the current module when
the module chooses to return DECLINE_CMD for the directive.
PR: 22299
Revision Changes Path
1.169 +11 -5 httpd-2.0/server/config.c
Index: config.c
===================================================================
RCS file: /home/cvs/httpd-2.0/server/config.c,v
retrieving revision 1.168
retrieving revision 1.169
diff -u -r1.168 -r1.169
--- config.c 1 Jan 2004 13:26:23 -0000 1.168
+++ config.c 30 Jan 2004 19:43:02 -0000 1.169
@@ -697,7 +697,7 @@
void *mconfig, const char *args)
{
char *w, *w2, *w3;
- const char *errmsg;
+ const char *errmsg = NULL;
if ((parms->override & cmd->req_override) == 0)
return apr_pstrcat(parms->pool, cmd->name, " not allowed here", NULL);
@@ -797,11 +797,14 @@
case ITERATE:
while (*(w = ap_getword_conf(parms->pool, &args)) != '\0') {
- if ((errmsg = cmd->AP_TAKE1(parms, mconfig, w)))
+
+ errmsg = cmd->AP_TAKE1(parms, mconfig, w);
+
+ if (errmsg && strcmp(errmsg, DECLINE_CMD) != 0)
return errmsg;
}
- return NULL;
+ return errmsg;
case ITERATE2:
w = ap_getword_conf(parms->pool, &args);
@@ -812,11 +815,14 @@
cmd->errmsg ? ", " : NULL, cmd->errmsg, NULL);
while (*(w2 = ap_getword_conf(parms->pool, &args)) != '\0') {
- if ((errmsg = cmd->AP_TAKE2(parms, mconfig, w, w2)))
+
+ errmsg = cmd->AP_TAKE2(parms, mconfig, w, w2);
+
+ if (errmsg && strcmp(errmsg, DECLINE_CMD) != 0)
return errmsg;
}
- return NULL;
+ return errmsg;
case FLAG:
w = ap_getword_conf(parms->pool, &args);
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic