On Fri, Jul 11, 2014 at 6:36 AM, <jkal...@apache.org> wrote: > static int ap_proxy_strcmp_ematch(const char *str, const char *expected) > +{ > + apr_size_t x, y; > + > + for (x = 0, y = 0; expected[y]; ++y, ++x) { > + if ((!str[x]) && (expected[y] != ' > || !apr_isdigit(expected[y + 1]))) > + return -1; > + if (expected[y] == ' && apr_isdigit(expected[y + 1])) { > + while (expected[y] == ' && apr_isdigit(expected[y + 1])) > + y += 2; > + if (!expected[y]) > + return 0; > + while (str[x]) { > + int ret; > + if ((ret = ap_proxy_strcmp_ematch(&str[x++], &expected[y])) > != 1) > + return ret; > + } > + return -1; > + } > + else if (expected[y] == '\\') { > + /* NUL is an invalid char! */ > + if (!expected[++y]) > + return -2; > + } > + if (str[x] != expected[y]) > + return 1; > + } > + return (str[x] != '\0'); > +}
This is breaking the common PHP-FPM recipes using unix domain sockets in trunk e.g. ProxyPassMatch ^/info.php$ "unix:/var/run/php5-fpm.sock|fcgi://localhost/home/covener/SRC/httpd-trunk/built/htdocs/" The old test accepted the worker URL being a prefix of the worker: (, but now that doesn't happen for ProxyPassMatch. This seems to be due to the last return. -- Eric Covener cove...@gmail.com