Merge "Support quoted parameters" into gingerbread

This commit is contained in:
Alon Albert
2011-02-22 10:31:26 -08:00
committed by Android (Google) Code Review

View File

@@ -578,6 +578,23 @@ public class ICalendar {
+ text);
}
parameter.name = text.substring(startIndex + 1, equalIndex);
} else if (c == '"') {
if (parameter == null) {
throw new FormatException("Expected parameter before '\"' in " + text);
}
if (equalIndex == -1) {
throw new FormatException("Expected '=' within parameter in " + text);
}
if (state.index > equalIndex + 1) {
throw new FormatException("Parameter value cannot contain a '\"' in " + text);
}
final int endQuote = text.indexOf('"', state.index + 1);
if (endQuote < 0) {
throw new FormatException("Expected closing '\"' in " + text);
}
parameter.value = text.substring(state.index + 1, endQuote);
state.index = endQuote + 1;
return parameter;
}
++state.index;
}