SPR-7869 - Accept-Charset header with '*' results in java.nio.charset.IllegalCharsetNameException

git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3897 50f2f4bb-b051-0410-bef5-90022cba6387
This commit is contained in:
Arjen Poutsma
2011-01-10 11:24:48 +00:00
parent f49c52cda0
commit 746167be6f
2 changed files with 18 additions and 5 deletions
@@ -177,11 +177,15 @@ public class HttpHeaders implements MultiValueMap<String, String> {
String[] tokens = value.split(",\\s*");
for (String token : tokens) {
int paramIdx = token.indexOf(';');
String charsetName;
if (paramIdx == -1) {
result.add(Charset.forName(token));
charsetName = token;
}
else {
result.add(Charset.forName(token.substring(0, paramIdx)));
charsetName = token.substring(0, paramIdx);
}
if (!charsetName.equals("*")) {
result.add(Charset.forName(charsetName));
}
}
}