Ver código fonte

LibJS: Properly compute the line for source location hints

These were obvious wrong uses of the old default "only first occurence"
parameter that was used in String::replace.
DexesTTP 3 anos atrás
pai
commit
eae8520dbb
1 arquivos alterados com 1 adições e 1 exclusões
  1. 1 1
      Userland/Libraries/LibJS/Parser.h

+ 1 - 1
Userland/Libraries/LibJS/Parser.h

@@ -182,7 +182,7 @@ public:
                 return {};
                 return {};
             // We need to modify the source to match what the lexer considers one line - normalizing
             // We need to modify the source to match what the lexer considers one line - normalizing
             // line terminators to \n is easier than splitting using all different LT characters.
             // line terminators to \n is easier than splitting using all different LT characters.
-            String source_string = source.replace("\r\n", "\n", ReplaceMode::FirstOnly).replace("\r", "\n", ReplaceMode::FirstOnly).replace(LINE_SEPARATOR_STRING, "\n", ReplaceMode::FirstOnly).replace(PARAGRAPH_SEPARATOR_STRING, "\n", ReplaceMode::FirstOnly);
+            String source_string = source.replace("\r\n", "\n", ReplaceMode::All).replace("\r", "\n", ReplaceMode::All).replace(LINE_SEPARATOR_STRING, "\n", ReplaceMode::All).replace(PARAGRAPH_SEPARATOR_STRING, "\n", ReplaceMode::All);
             StringBuilder builder;
             StringBuilder builder;
             builder.append(source_string.split_view('\n', true)[position.value().line - 1]);
             builder.append(source_string.split_view('\n', true)[position.value().line - 1]);
             builder.append('\n');
             builder.append('\n');