This is an automated email from the git hooks/post-receive script.

henrich pushed a commit to branch debian/sid
in repository jruby-joni.

commit a63d70883cc33872163b46dd84f81a8462ce3ae7
Author: Marcin Mielzynski <l...@gazeta.pl>
Date:   Sat Dec 30 18:30:22 2017 +0100

    too many capture groups check
---
 src/org/joni/Config.java                  | 1 +
 src/org/joni/ScanEnvironment.java         | 1 +
 src/org/joni/exception/ErrorMessages.java | 1 +
 3 files changed, 3 insertions(+)

diff --git a/src/org/joni/Config.java b/src/org/joni/Config.java
index d570064..97d594e 100644
--- a/src/org/joni/Config.java
+++ b/src/org/joni/Config.java
@@ -47,6 +47,7 @@ public interface Config extends org.jcodings.Config {
 
     final int NREGION                   = 10;
     final int MAX_BACKREF_NUM           = 1000;
+    final int MAX_CAPTURE_GROUP_NUM     = 32767;
     final int MAX_REPEAT_NUM            = 100000;
     final int MAX_MULTI_BYTE_RANGES_NUM = 10000;
 
diff --git a/src/org/joni/ScanEnvironment.java 
b/src/org/joni/ScanEnvironment.java
index 9731881..023495d 100644
--- a/src/org/joni/ScanEnvironment.java
+++ b/src/org/joni/ScanEnvironment.java
@@ -86,6 +86,7 @@ public final class ScanEnvironment {
     }
 
     public int addMemEntry() {
+        if (numMem >= Config.MAX_CAPTURE_GROUP_NUM) throw new 
InternalException(ErrorMessages.ERR_TOO_MANY_CAPTURE_GROUPS);
         if (numMem++ == 0) {
             memNodes = new Node[Config.SCANENV_MEMNODES_SIZE];
         } else if (numMem >= memNodes.length) {
diff --git a/src/org/joni/exception/ErrorMessages.java 
b/src/org/joni/exception/ErrorMessages.java
index 008ea0b..8605c5c 100644
--- a/src/org/joni/exception/ErrorMessages.java
+++ b/src/org/joni/exception/ErrorMessages.java
@@ -35,6 +35,7 @@ public interface ErrorMessages extends 
org.jcodings.exception.ErrorMessages {
     final String ERR_UNEXPECTED_BYTECODE = "unexpected bytecode (bug)";
     final String ERR_DEFAULT_ENCODING_IS_NOT_SETTED = "default 
multibyte-encoding is not setted";
     final String ERR_SPECIFIED_ENCODING_CANT_CONVERT_TO_WIDE_CHAR = "can't 
convert to wide-char on specified multibyte-encoding";
+    final String ERR_TOO_MANY_CAPTURE_GROUPS = "too many capture groups are 
specified";
 
     /* general error */
     final String ERR_INVALID_ARGUMENT = "invalid argument";

-- 
Alioth's /usr/local/bin/git-commit-notice on 
/srv/git.debian.org/git/pkg-java/jruby-joni.git

_______________________________________________
pkg-java-commits mailing list
pkg-java-comm...@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-java-commits

Reply via email to