Explorar o código

Fixed newline escaping in YAML2SQL converter

Lemongrass3110 %!s(int64=4) %!d(string=hai) anos
pai
achega
7a4009601d
Modificáronse 1 ficheiros con 6 adicións e 0 borrados
  1. 6 0
      src/tool/yaml2sql.cpp

+ 6 - 0
src/tool/yaml2sql.cpp

@@ -236,6 +236,12 @@ std::string string_escape(const std::string &s) {
 	escaped.reserve(n * 2);
 
 	for (size_t i = 0; i < n; ++i) {
+		if (s[i] == '\r')
+			continue;
+		if (s[i] == '\n' && (i + 1) < n) {
+			escaped += "\\n";
+			continue;
+		}
 		if (s[i] == '\\' || s[i] == '\'')
 			escaped += '\\';
 		escaped += s[i];