summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--java/util/regex/Matcher.java6
2 files changed, 11 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 05aa794b8..2b9cb5c4d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2011-03-02 Pekka Enberg <penberg@kernel.org>
+
+ * java/util/regex/Matcher:
+ (find): Make sure match is within input data limits.
+
2011-02-22 Pekka Enberg <penberg@kernel.org>
* java/util/HashMap:
diff --git a/java/util/regex/Matcher.java b/java/util/regex/Matcher.java
index be57471de..2d058fbcb 100644
--- a/java/util/regex/Matcher.java
+++ b/java/util/regex/Matcher.java
@@ -169,6 +169,12 @@ public final class Matcher implements MatchResult
if (match != null)
{
int endIndex = match.getEndIndex();
+ // Is the match within input limits?
+ if (endIndex > input.length())
+ {
+ match = null;
+ return false;
+ }
// Are we stuck at the same position?
if (!first && endIndex == position)
{