diff options
author | Aliaksandr Valialkin <valyala@gmail.com> | 2016-02-09 20:16:23 +0200 |
---|---|---|
committer | Aliaksandr Valialkin <valyala@gmail.com> | 2016-02-09 20:16:23 +0200 |
commit | 5507d704f907651179c4464a79305b627634765a (patch) | |
tree | 5d49d07907948f2b1c66c1eb0f0c71d6a4847174 /uri.go | |
parent | Added BodyWriteTo to Request and Response (diff) | |
download | fasthttp-5507d704f907651179c4464a79305b627634765a.tar.gz fasthttp-5507d704f907651179c4464a79305b627634765a.tar.bz2 fasthttp-5507d704f907651179c4464a79305b627634765a.zip |
Diffstat (limited to 'uri.go')
-rw-r--r-- | uri.go | 19 |
1 files changed, 8 insertions, 11 deletions
@@ -212,7 +212,7 @@ func (x *URI) parse(host, uri []byte, h *RequestHeader) { if queryIndex < 0 && fragmentIndex < 0 { x.pathOriginal = append(x.pathOriginal, b...) - x.path = normalizePath(x.path, b) + x.path = normalizePath(x.path, x.pathOriginal) return } @@ -225,19 +225,16 @@ func (x *URI) parse(host, uri []byte, h *RequestHeader) { x.queryString = append(x.queryString, b[queryIndex+1:]...) } else { x.queryString = append(x.queryString, b[queryIndex+1:fragmentIndex]...) + x.hash = append(x.hash, b[fragmentIndex+1:]...) } + return } - if fragmentIndex >= 0 { - if queryIndex < 0 { - // Path is up to the start of fragment. Unless a query was before it - x.pathOriginal = append(x.pathOriginal, b[:fragmentIndex]...) - x.path = normalizePath(x.path, x.pathOriginal) - } - - x.hash = append(x.hash, b[fragmentIndex+1:]...) - b = b[:fragmentIndex] - } + // fragmentIndex >= 0 && queryIndex < 0 + // Path is up to the start of fragment + x.pathOriginal = append(x.pathOriginal, b[:fragmentIndex]...) + x.path = normalizePath(x.path, x.pathOriginal) + x.hash = append(x.hash, b[fragmentIndex+1:]...) } func normalizePath(dst, src []byte) []byte { |