Fixed AS3 - line numbering on pushback string on regexp

This commit is contained in:
Jindra Petřík
2023-01-13 22:09:22 +01:00
parent 50910f57d1
commit 07e94aea45
3 changed files with 8 additions and 1 deletions

View File

@@ -15,6 +15,7 @@ All notable changes to this project will be documented in this file.
- AS3 - local registers type declarations vs for..in clause
- [#1888] AS3 - Coerce to int when Number
- AS3 - super properties resolving
- AS3 - line numbering on pushback string on regexp
## [18.3.2] - 2023-01-10
### Removed

View File

@@ -45,9 +45,12 @@ import java.math.BigInteger;
public void yypushbackstr(String s, int state)
{
int numLines = count(s, "\n");
int newYyline = yyline - numLines;
sourceCode = s + sourceCode.substring(yychar + yylength());
yyreset(new StringReader(sourceCode));
yybegin(state);
yyline = newYyline;
}
public void yypushbackstr(String s)

View File

@@ -19,10 +19,10 @@
package com.jpexs.decompiler.flash.abc.avm2.parser.script;
import com.jpexs.decompiler.flash.abc.avm2.parser.AVM2ParseException;
import java.io.StringReader;
import java.math.BigInteger;
import java.util.ArrayList;
import java.util.List;
import java.util.Stack;
import java.math.BigInteger;
/**
@@ -938,9 +938,12 @@ public final class ActionScriptLexer {
public void yypushbackstr(String s, int state)
{
int numLines = count(s, "\n");
int newYyline = yyline - numLines;
sourceCode = s + sourceCode.substring(yychar + yylength());
yyreset(new StringReader(sourceCode));
yybegin(state);
yyline = newYyline;
}
public void yypushbackstr(String s)