• Russ Cox's avatar
    net/url: allow all valid host chars in RawPath · fced03a5
    Russ Cox authored
    The old code was only allowing the chars we choose not to escape.
    We sometimes prefer to escape chars that do not strictly need it.
    Allowing those to be used in RawPath lets people override that
    preference, which is in fact the whole point of RawPath (new in Go 1.5).
    
    While we are here, also allow [ ] in RawPath.
    This is not strictly spec-compliant, but it is what modern browers
    do and what at least some people expect, and the [ ] do not cause
    any ambiguity (the usual reason they would be escaped, as they are
    part of the RFC gen-delims class).
    The argument for allowing them now instead of waiting until Go 1.6
    is that this way RawPath has one fixed meaning at the time it is
    introduced, that we should not need to change or expand.
    
    Fixes #5684.
    
    Change-Id: If9c82a18f522d7ee1d10310a22821ada9286ee5c
    Reviewed-on: https://go-review.googlesource.com/13258Reviewed-by: 's avatarAndrew Gerrand <adg@golang.org>
    fced03a5
url.go 22.5 KB