diff options
| author | Sergio Villar Senin <svillar@igalia.com> | 2010-09-03 21:07:30 +0200 |
|---|---|---|
| committer | Sergio Villar Senin <svillar@igalia.com> | 2010-09-03 21:07:30 +0200 |
| commit | b4f2a4d9d69101dacdc0138c2ed93de8c8ca2368 (patch) | |
| tree | 85208777b5f1c89b43f97bd3565596933f52d1bb /libsoup/soup-uri.c | |
| parent | a989d643000f9b9c99eeaa79154e047ad48e6062 (diff) | |
| download | libsoup-b4f2a4d9d69101dacdc0138c2ed93de8c8ca2368.tar.gz | |
Do not uppercase percent-encoded triplets when normalizing URIs
https://bugzilla.gnome.org/show_bug.cgi?id=628728
Diffstat (limited to 'libsoup/soup-uri.c')
| -rw-r--r-- | libsoup/soup-uri.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/libsoup/soup-uri.c b/libsoup/soup-uri.c index a3353a90..e0a99427 100644 --- a/libsoup/soup-uri.c +++ b/libsoup/soup-uri.c @@ -671,9 +671,13 @@ uri_normalized_copy (const char *part, int length, *d++ = c; s += 2; } else { + /* We leave it unchanged. We used to uppercase percent-encoded + * triplets but we do not do it any more as RFC3986 Section 6.2.2.1 + * says that they only SHOULD be case normalized. + */ *d++ = *s++; - *d++ = g_ascii_toupper (*s++); - *d++ = g_ascii_toupper (*s); + *d++ = *s++; + *d++ = *s; } } else { if (*s == ' ') |
