mirror of
https://github.com/red0124/ssp.git
synced 2025-01-23 04:55:20 +01:00
Merge pull request #26 from red0124/bugfix/terminated_escape_on_quoted_multiline
Fix bug where the parsing of data containing escaped new lines within…
This commit is contained in:
commit
57abdb3923
@ -600,6 +600,8 @@ private:
|
|||||||
|
|
||||||
if constexpr (quoted_multiline_enabled) {
|
if constexpr (quoted_multiline_enabled) {
|
||||||
while (unterminated_quote()) {
|
while (unterminated_quote()) {
|
||||||
|
size -= next_line_converter_.size_shifted();
|
||||||
|
|
||||||
if (multiline_limit_reached(limit)) {
|
if (multiline_limit_reached(limit)) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@ -665,9 +667,6 @@ private:
|
|||||||
}
|
}
|
||||||
|
|
||||||
void undo_remove_eol(char* buffer, size_t& string_end) {
|
void undo_remove_eol(char* buffer, size_t& string_end) {
|
||||||
if (next_line_converter_.unterminated_quote()) {
|
|
||||||
string_end -= next_line_converter_.size_shifted();
|
|
||||||
}
|
|
||||||
if (crlf_) {
|
if (crlf_) {
|
||||||
std::copy_n("\r\n\0", 3, buffer + string_end);
|
std::copy_n("\r\n\0", 3, buffer + string_end);
|
||||||
string_end += 2;
|
string_end += 2;
|
||||||
|
5
ssp.hpp
5
ssp.hpp
@ -2792,6 +2792,8 @@ private:
|
|||||||
|
|
||||||
if constexpr (quoted_multiline_enabled) {
|
if constexpr (quoted_multiline_enabled) {
|
||||||
while (unterminated_quote()) {
|
while (unterminated_quote()) {
|
||||||
|
size -= next_line_converter_.size_shifted();
|
||||||
|
|
||||||
if (multiline_limit_reached(limit)) {
|
if (multiline_limit_reached(limit)) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@ -2857,9 +2859,6 @@ private:
|
|||||||
}
|
}
|
||||||
|
|
||||||
void undo_remove_eol(char* buffer, size_t& string_end) {
|
void undo_remove_eol(char* buffer, size_t& string_end) {
|
||||||
if (next_line_converter_.unterminated_quote()) {
|
|
||||||
string_end -= next_line_converter_.size_shifted();
|
|
||||||
}
|
|
||||||
if (crlf_) {
|
if (crlf_) {
|
||||||
std::copy_n("\r\n\0", 3, buffer + string_end);
|
std::copy_n("\r\n\0", 3, buffer + string_end);
|
||||||
string_end += 2;
|
string_end += 2;
|
||||||
|
Loading…
Reference in New Issue
Block a user