summaryrefslogtreecommitdiffstats
path: root/webkit/glue/weburlloader_impl.cc
diff options
context:
space:
mode:
authorjshin@chromium.org <jshin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-11-03 23:25:55 +0000
committerjshin@chromium.org <jshin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-11-03 23:25:55 +0000
commitc09fb1c79c0a3e76dbb6091e4b718fd9bb197395 (patch)
treeaab648921cd1817792614596ba4e6f94c9c3d7e0 /webkit/glue/weburlloader_impl.cc
parent0912579b25f74d5b66c8adc0d3d8a7f805141e89 (diff)
downloadchromium_src-c09fb1c79c0a3e76dbb6091e4b718fd9bb197395.zip
chromium_src-c09fb1c79c0a3e76dbb6091e4b718fd9bb197395.tar.gz
chromium_src-c09fb1c79c0a3e76dbb6091e4b718fd9bb197395.tar.bz2
Add support for the extended header parameter syntax in Content-Disposition header (RFC 5987).
It's not generic, but is only used for 'filename' param. The CL is originally by James Simonsen I reviewed at http://codereview.chromium.org/4254001/show I added a check for ASCIIness for RFC 5987 extended header and a few tests to NetUti*.GetFileNameFromCD (net_unittests) and I*.ConvertCo*Norma* (base_unittests). I also replaced '\uxxxx' notation with the corresponding UTF-8 byte sequence because Visual Studio does not understand it yet. BUG=57830 TEST="net_unittests --gtest_filter=NetU*.GetFil*", "base_unittests --gtest_filter=I*.Conver*Norm*" and tests at http://greenbytes.de/tech/tc2231/ Original CL / Review: By James Simonsen; at http://codereview.chromium.org/4254001/show Review URL: http://codereview.chromium.org/4435001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64987 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/glue/weburlloader_impl.cc')
-rw-r--r--webkit/glue/weburlloader_impl.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/webkit/glue/weburlloader_impl.cc b/webkit/glue/weburlloader_impl.cc
index 77fe2a8..9f7c325 100644
--- a/webkit/glue/weburlloader_impl.cc
+++ b/webkit/glue/weburlloader_impl.cc
@@ -562,7 +562,8 @@ void WebURLLoaderImpl::Context::OnReceivedResponse(
std::string content_type;
info.headers->EnumerateHeader(NULL, "content-type", &content_type);
- std::string boundary = net::GetHeaderParamValue(content_type, "boundary");
+ std::string boundary = net::GetHeaderParamValue(
+ content_type, "boundary", net::QuoteRule::REMOVE_OUTER_QUOTES);
TrimString(boundary, " \"", &boundary);
// If there's no boundary, just handle the request normally. In the gecko