This is an automated email from the ASF dual-hosted git repository. joshtynjala pushed a commit to branch develop in repository https://gitbox.apache.org/repos/asf/royale-compiler.git
commit 861d8098e0366b8a8e4462167aca34a1296b42ff Author: Josh Tynjala <[email protected]> AuthorDate: Mon Oct 31 09:40:37 2022 -0700 linter: null reference checks --- .../java/org/apache/royale/linter/MXMLLinter.java | 23 ++++++++++++++-------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/linter/src/main/java/org/apache/royale/linter/MXMLLinter.java b/linter/src/main/java/org/apache/royale/linter/MXMLLinter.java index bd5662755..7a465d589 100644 --- a/linter/src/main/java/org/apache/royale/linter/MXMLLinter.java +++ b/linter/src/main/java/org/apache/royale/linter/MXMLLinter.java @@ -104,7 +104,9 @@ public class MXMLLinter extends BaseLinter { PrefixMap prefixMap = mxmlTokenizer.getPrefixMap(); MXMLData mxmlData = new MXMLData(originalTokens, prefixMap, new StringFileSpecification(filePath, text)); IMXMLTagData rootTag = mxmlData.getRootTag(); - visitTag(rootTag, tokenQuery, fileProblems); + if (rootTag != null) { + visitTag(rootTag, tokenQuery, fileProblems); + } IMXMLUnitData current = rootTag; int offset = 1; String className = Paths.get(filePath).getFileName().toString(); @@ -112,15 +114,20 @@ public class MXMLLinter extends BaseLinter { if (extensionIndex != -1) { className = className.substring(0, extensionIndex); } - String componentName = mxmlData.getRootTag().getShortName(); + String componentName = null; + if (rootTag != null) { + componentName = rootTag.getShortName(); + } StringBuilder builder = new StringBuilder(); builder.append("/* "); builder.append(LINTER_TAG_OFF); builder.append(" */"); builder.append("package{public class "); builder.append(className); - builder.append(" extends "); - builder.append(componentName); + if (componentName != null) { + builder.append(" extends "); + builder.append(componentName); + } builder.append("{"); while (current != null) { if (current instanceof IMXMLTagData) { @@ -192,8 +199,8 @@ public class MXMLLinter extends BaseLinter { String tokenText = text.substring(start, end); MXMLToken formattingToken = new MXMLToken(MXMLTokenQuery.TOKEN_TYPE_FORMATTING, start, end, prevToken.getLine(), prevToken.getColumn() + end - start, tokenText); - formattingToken.setEndLine(token.getLine()); - formattingToken.setEndLine(token.getColumn()); + formattingToken.setEndLine(token.getLine()); + formattingToken.setEndLine(token.getColumn()); tokens.add(formattingToken); } } @@ -207,8 +214,8 @@ public class MXMLLinter extends BaseLinter { String tokenText = text.substring(start, end); MXMLToken formattingToken = new MXMLToken(MXMLTokenQuery.TOKEN_TYPE_FORMATTING, start, end, prevToken.getLine(), prevToken.getColumn() + end - start, tokenText); - formattingToken.setEndLine(prevToken.getLine()); - formattingToken.setEndLine(prevToken.getColumn()); + formattingToken.setEndLine(prevToken.getLine()); + formattingToken.setEndLine(prevToken.getColumn()); tokens.add(formattingToken); } }
