Always process SSE "data:" line

ServerSentEventHttpMessageReader now always processes "data:"
lines, including empty lines, as per SSE spec.

Closes gh-35412
This commit is contained in:
rstoyanchev
2025-09-10 16:22:23 +01:00
parent 3702031f82
commit dd60fddaf0
2 changed files with 19 additions and 5 deletions
@@ -145,15 +145,15 @@ public class ServerSentEventHttpMessageReader implements HttpMessageReader<Objec
for (String line : lines) {
if (line.startsWith("data:")) {
data = (data != null ? data : new StringBuilder());
int length = line.length();
if (length > 5) {
int index = (line.charAt(5) != ' ' ? 5 : 6);
if (length > index) {
data = (data != null ? data : new StringBuilder());
data.append(line, index, line.length());
data.append('\n');
}
}
data.append('\n');
}
else if (shouldWrap) {
if (line.startsWith("id:")) {