Imported Upstream version 3.12.0

Former-commit-id: cf92446697332992ec36726e78eb8703e1f259d7
This commit is contained in:
Jo Shields
2015-01-13 10:44:36 +00:00
parent 8b9b85e7f5
commit 181b81b4a4
659 changed files with 12743 additions and 16300 deletions

View File

@@ -193,13 +193,18 @@ namespace System.Net.Http.Headers
//
for (; i < input.Length; ++i) {
char s = input[i];
if (s > last_token_char || !token_chars[s])
if (!IsValidCharacter (s))
return false;
}
return i > 0;
}
public static bool IsValidCharacter (char input)
{
return input <= last_token_char && token_chars[input];
}
public void EatChar ()
{
++pos;
@@ -247,7 +252,7 @@ namespace System.Net.Http.Headers
return false;
}
public Token Scan ()
public Token Scan (bool recognizeDash = false)
{
int start = pos;
if (s == null)
@@ -279,8 +284,12 @@ namespace System.Net.Http.Headers
ttype = Token.Type.SeparatorSlash;
break;
case '-':
ttype = Token.Type.SeparatorDash;
break;
if (recognizeDash) {
ttype = Token.Type.SeparatorDash;
break;
}
goto default;
case ',':
ttype = Token.Type.SeparatorComma;
break;