This is an automated email from the ASF dual-hosted git repository. lkishalmi pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/netbeans.git
The following commit(s) were added to refs/heads/master by this push: new a1373cd4b0 Fix possible NPE while editing ANTLR Grammar a1373cd4b0 is described below commit a1373cd4b03cb6d5ce41b966b6c36f88a9ef5c5e Author: Laszlo Kishalmi <laszlo.kisha...@gmail.com> AuthorDate: Mon Sep 19 23:30:20 2022 -0700 Fix possible NPE while editing ANTLR Grammar --- .../netbeans/modules/languages/antlr/v3/Antlr3ParserResult.java | 7 +++++-- .../netbeans/modules/languages/antlr/v4/Antlr4ParserResult.java | 8 +++++--- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/java/languages.antlr/src/org/netbeans/modules/languages/antlr/v3/Antlr3ParserResult.java b/java/languages.antlr/src/org/netbeans/modules/languages/antlr/v3/Antlr3ParserResult.java index cdd29cdd8e..84c7583fd3 100644 --- a/java/languages.antlr/src/org/netbeans/modules/languages/antlr/v3/Antlr3ParserResult.java +++ b/java/languages.antlr/src/org/netbeans/modules/languages/antlr/v3/Antlr3ParserResult.java @@ -137,8 +137,11 @@ public final class Antlr3ParserResult extends AntlrParserResult<ANTLRv3Parser> { @Override public void exitRule_(ANTLRv3Parser.Rule_Context ctx) { - AntlrStructureItem.RuleStructureItem rule = new AntlrStructureItem.RuleStructureItem(ctx.id_().getText(), getFileObject(), ctx.getStart().getStartIndex(), ctx.getStop().getStopIndex() + 1); - structure.add(rule); + if (ctx.id_() != null) { + AntlrStructureItem.RuleStructureItem rule = new AntlrStructureItem.RuleStructureItem( + ctx.id_().getText(), getFileObject(), ctx.getStart().getStartIndex(), ctx.getStop().getStopIndex() + 1); + structure.add(rule); + } } }; diff --git a/java/languages.antlr/src/org/netbeans/modules/languages/antlr/v4/Antlr4ParserResult.java b/java/languages.antlr/src/org/netbeans/modules/languages/antlr/v4/Antlr4ParserResult.java index eba55a4126..ffffb31cc2 100644 --- a/java/languages.antlr/src/org/netbeans/modules/languages/antlr/v4/Antlr4ParserResult.java +++ b/java/languages.antlr/src/org/netbeans/modules/languages/antlr/v4/Antlr4ParserResult.java @@ -211,7 +211,7 @@ public final class Antlr4ParserResult extends AntlrParserResult<ANTLRv4Parser> { @Override public void exitLexerRuleSpec(ANTLRv4Parser.LexerRuleSpecContext ctx) { - if (ctx.FRAGMENT() == null) { + if ((ctx.FRAGMENT() == null) && (ctx.TOKEN_REF() != null)) { // Do not represent fragments in the structure AntlrStructureItem.RuleStructureItem rule = new AntlrStructureItem.RuleStructureItem(ctx.TOKEN_REF().getText(), getFileObject(), ctx.getStart().getStartIndex(), ctx.getStop().getStopIndex() + 1); lexerStructure.add(rule); @@ -220,8 +220,10 @@ public final class Antlr4ParserResult extends AntlrParserResult<ANTLRv4Parser> { @Override public void exitParserRuleSpec(ANTLRv4Parser.ParserRuleSpecContext ctx) { - AntlrStructureItem.RuleStructureItem rule = new AntlrStructureItem.RuleStructureItem(ctx.RULE_REF().getText(), getFileObject(), ctx.getStart().getStartIndex(), ctx.getStop().getStopIndex() + 1); - structure.add(rule); + if (ctx.RULE_REF() != null) { + AntlrStructureItem.RuleStructureItem rule = new AntlrStructureItem.RuleStructureItem(ctx.RULE_REF().getText(), getFileObject(), ctx.getStart().getStartIndex(), ctx.getStop().getStopIndex() + 1); + structure.add(rule); + } } @Override --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@netbeans.apache.org For additional commands, e-mail: commits-h...@netbeans.apache.org For further information about the NetBeans mailing lists, visit: https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists