[jruby-joni] 43/194: dont populate mbuf accidentally
Hideki Yamane
henrich at moszumanska.debian.org
Thu Feb 1 12:04:20 UTC 2018
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 c43e3831a3f66e40fd12c3419de7106c00c77743
Author: Marcin Mielzynski <lopx at gazeta.pl>
Date: Fri Dec 29 20:31:49 2017 +0100
dont populate mbuf accidentally
---
src/org/joni/ast/CClassNode.java | 30 ++++++++++++++----------------
1 file changed, 14 insertions(+), 16 deletions(-)
diff --git a/src/org/joni/ast/CClassNode.java b/src/org/joni/ast/CClassNode.java
index 3ee8fa4..8e50e6d 100644
--- a/src/org/joni/ast/CClassNode.java
+++ b/src/org/joni/ast/CClassNode.java
@@ -23,11 +23,8 @@ import org.jcodings.CodeRange;
import org.jcodings.Encoding;
import org.jcodings.IntHolder;
import org.jcodings.constants.CharacterType;
-import org.jcodings.exception.EncodingException;
-import org.jcodings.specific.ASCIIEncoding;
import org.joni.BitSet;
import org.joni.CodeRangeBuffer;
-import org.joni.Config;
import org.joni.ScanEnvironment;
import org.joni.exception.ErrorMessages;
import org.joni.exception.InternalException;
@@ -199,12 +196,13 @@ public final class CClassNode extends Node {
// add_ctype_to_cc_by_range // Encoding out!
public void addCTypeByRange(int ctype, boolean not, Encoding enc, int sbOut, int mbr[]) {
int n = mbr[0];
+ int i;
if (!not) {
- for (int i=0; i<n; i++) {
+ for (i=0; i<n; i++) {
for (int j=CR_FROM(mbr, i); j<=CR_TO(mbr, i); j++) {
if (j >= sbOut) {
- if (j >= CR_FROM(mbr, i)) {
+ if (j > CR_FROM(mbr, i)) {
addCodeRangeToBuf(j, CR_TO(mbr, i));
i++;
}
@@ -218,14 +216,14 @@ public final class CClassNode extends Node {
}
}
// !sb_end:!
- for (int i=0; i<n; i++) {
+ for (; i<n; i++) {
addCodeRangeToBuf(CR_FROM(mbr, i), CR_TO(mbr, i));
}
} else {
int prev = 0;
- for (int i=0; i<n; i++) {
+ for (i=0; i<n; i++) {
for (int j=prev; j < CR_FROM(mbr, i); j++) {
if (j >= sbOut) {
// !goto sb_end2!, remove duplication
@@ -248,7 +246,7 @@ public final class CClassNode extends Node {
// !sb_end2:!
prev = sbOut;
- for (int i=0; i<n; i++) {
+ for (i=0; i<n; i++) {
if (prev < CR_FROM(mbr, i)) addCodeRangeToBuf(prev, CR_FROM(mbr, i) - 1);
prev = CR_TO(mbr, i) + 1;
}
@@ -256,6 +254,14 @@ public final class CClassNode extends Node {
}
}
+ private static int CR_FROM(int[] range, int i) {
+ return range[(i * 2) + 1];
+ }
+
+ private static int CR_TO(int[] range, int i) {
+ return range[(i * 2) + 2];
+ }
+
// add_ctype_to_cc
public void addCType(int ctype, boolean not, boolean asciiRange, ScanEnvironment env, IntHolder sbOut) {
Encoding enc = env.enc;
@@ -492,12 +498,4 @@ public final class CClassNode extends Node {
public boolean isNot() {
return (flags & FLAG_NCCLASS_NOT) != 0;
}
-
- private static int CR_FROM(int[] range, int i) {
- return range[(i * 2) + 1];
- }
-
- private static int CR_TO(int[] range, int i) {
- return range[(i * 2) + 2];
- }
}
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-java/jruby-joni.git
More information about the pkg-java-commits
mailing list