[Remove entries to the current 2.0 section below, when backported]
+ *) Keep focus of ITERATE and ITERATE2 on the current module when
+ the module chooses to return DECLINE_CMD for the directive.
+ PR 22299. [Geoffrey Young <geoff apache.org>]
+
*) Allow mod_auth_digest to work with sub-requests with different
methods than the original request. PR 25040.
- [Josh Dady <jpd@indecisive.com>]
+ [Josh Dady <jpd indecisive.com>]
*) Fixed file extensions for real media files and removed rpm extension
from mime.types. PR 26079. [Allan Sandfeld <kde carewolf.com>]
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);
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);
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);