Connection::Buffer: Prevent modification of line breaks in quotes

After splitting the messages received into lines, we could still have a line break within quotes. Since we just want to modify terminating line breaks, we change the recognition accordingly.
This commit is contained in:
Sebastian Serth
2023-09-24 15:42:26 +02:00
parent 64c1a1cb6f
commit 515a81537c

View File

@ -82,7 +82,8 @@ class Runner::Connection::Buffer
@global_buffer = +''
# For our buffering, we identified line breaks with the `\n` and removed those temporarily.
# Thus, we now re-add the `\n` at the end of the string and remove the `\r` at the same time.
message = message.gsub(/\r$/, "\n")
# Still, some messages might still contain a `\r\n` within strings (e.g., received from Python for the linter).
message = message.gsub(/\r(?!\n)$/, "\n")
@line_buffer.push message
end