You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by gn...@apache.org on 2017/05/03 13:19:06 UTC
svn commit: r1793643 -
/felix/trunk/gogo/jline/src/main/java/org/apache/felix/gogo/jline/Highlighter.java
Author: gnodet
Date: Wed May 3 13:19:06 2017
New Revision: 1793643
URL: http://svn.apache.org/viewvc?rev=1793643&view=rev
Log:
[gogo][jline] Guard against infinite loops in the highlighter
Modified:
felix/trunk/gogo/jline/src/main/java/org/apache/felix/gogo/jline/Highlighter.java
Modified: felix/trunk/gogo/jline/src/main/java/org/apache/felix/gogo/jline/Highlighter.java
URL: http://svn.apache.org/viewvc/felix/trunk/gogo/jline/src/main/java/org/apache/felix/gogo/jline/Highlighter.java?rev=1793643&r1=1793642&r2=1793643&view=diff
==============================================================================
--- felix/trunk/gogo/jline/src/main/java/org/apache/felix/gogo/jline/Highlighter.java (original)
+++ felix/trunk/gogo/jline/src/main/java/org/apache/felix/gogo/jline/Highlighter.java Wed May 3 13:19:06 2017
@@ -63,6 +63,10 @@ public class Highlighter extends Default
statements = parser.statements();
} catch (EOFError e) {
repaired = repaired + " " + e.repair();
+ // Make sure we don't loop forever
+ if (repaired.length() > buffer.length() + 1024) {
+ return new AttributedStringBuilder().append(buffer).toAttributedString();
+ }
}
}