changeset 2498:d3357bf23a5e

fix /?new=arg?old=arg redirect case
author Igor Sysoev <igor@sysoev.ru>
date Tue, 10 Feb 2009 16:03:42 +0000
parents 1ab9cef4ff6c
children 1e9a362c3dce
files src/http/ngx_http_script.c
diffstat 1 files changed, 15 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/src/http/ngx_http_script.c
+++ b/src/http/ngx_http_script.c
@@ -244,10 +244,21 @@ ngx_http_script_compile(ngx_http_script_
 
         name.data = &sc->source->data[i];
 
-        while (i < sc->source->len
-               && sc->source->data[i] != '$'
-               && !(sc->source->data[i] == '?' && sc->compile_args))
-        {
+        while (i < sc->source->len) {
+
+            if (sc->source->data[i] == '$') {
+                break;
+            }
+
+            if (sc->source->data[i] == '?') {
+
+                sc->args = 1;
+
+                if (sc->compile_args) {
+                    break;
+                }
+            }
+
             i++;
             name.len++;
         }