From 9600a7072488725697c030f1446c6e0784f3329c Mon Sep 17 00:00:00 2001 From: Sam Harwell Date: Mon, 13 Feb 2012 08:41:57 -0600 Subject: [PATCH] Fix NPE in CommonToken when TokenSource is not available --- runtime/Java/src/org/antlr/v4/runtime/CommonToken.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/runtime/Java/src/org/antlr/v4/runtime/CommonToken.java b/runtime/Java/src/org/antlr/v4/runtime/CommonToken.java index 18564fbeb..7e591dcf5 100644 --- a/runtime/Java/src/org/antlr/v4/runtime/CommonToken.java +++ b/runtime/Java/src/org/antlr/v4/runtime/CommonToken.java @@ -64,8 +64,10 @@ public class CommonToken implements WritableToken, Serializable { this.channel = channel; this.start = start; this.stop = stop; - this.line = source.getLine(); - this.charPositionInLine = source.getCharPositionInLine(); + if (source != null) { + this.line = source.getLine(); + this.charPositionInLine = source.getCharPositionInLine(); + } } public CommonToken(int type, String text) { @@ -190,7 +192,7 @@ public class CommonToken implements WritableToken, Serializable { } public CharStream getInputStream() { - return source.getInputStream(); + return source != null ? source.getInputStream() : null; } public String toString() {