aboutsummaryrefslogtreecommitdiffstats
path: root/devel
diff options
context:
space:
mode:
authorknu <knu@FreeBSD.org>2003-08-28 00:06:06 +0800
committerknu <knu@FreeBSD.org>2003-08-28 00:06:06 +0800
commitb152fb557bcedb6ff1b55c6fff095b7e7d22a75e (patch)
tree5da2184eae7371055b9ebe3bb53d509ae6147ce7 /devel
parent78603a2e4bbc8f108507f95c2184edf5fb985818 (diff)
downloadfreebsd-ports-gnome-b152fb557bcedb6ff1b55c6fff095b7e7d22a75e.tar.gz
freebsd-ports-gnome-b152fb557bcedb6ff1b55c6fff095b7e7d22a75e.tar.zst
freebsd-ports-gnome-b152fb557bcedb6ff1b55c6fff095b7e7d22a75e.zip
Incorporate a patch from [ruby-dev:21263] to fix the problem where it
segfaults when there is an error in char-class in char-class. Bump PORTREVISION accordingly.
Diffstat (limited to 'devel')
-rw-r--r--devel/oniguruma/Makefile1
-rw-r--r--devel/oniguruma/files/patch-regparse.c29
-rw-r--r--devel/oniguruma4/Makefile1
-rw-r--r--devel/oniguruma4/files/patch-regparse.c29
-rw-r--r--devel/oniguruma5/Makefile1
-rw-r--r--devel/oniguruma5/files/patch-regparse.c29
6 files changed, 90 insertions, 0 deletions
diff --git a/devel/oniguruma/Makefile b/devel/oniguruma/Makefile
index 8fcc2a1c434c..992bcaf77c7d 100644
--- a/devel/oniguruma/Makefile
+++ b/devel/oniguruma/Makefile
@@ -7,6 +7,7 @@
PORTNAME= oniguruma
PORTVERSION= 1.9.3
+PORTREVISION= 1
CATEGORIES= devel
MASTER_SITES= ${MASTER_SITE_RUBY}
MASTER_SITE_SUBDIR= contrib
diff --git a/devel/oniguruma/files/patch-regparse.c b/devel/oniguruma/files/patch-regparse.c
new file mode 100644
index 000000000000..f0714d214678
--- /dev/null
+++ b/devel/oniguruma/files/patch-regparse.c
@@ -0,0 +1,29 @@
+Obtained from [ruby-dev:21263]
+
+Index: regparse.c
+===================================================================
+--- regparse.c (revision 217)
++++ regparse.c (working copy)
+@@ -3571,7 +3571,10 @@
+ in_israw = 1;
+ val_entry:
+ len = WC2MBLEN(env->enc, v);
+- if (len < 0) return len;
++ if (len < 0) {
++ r = len;
++ goto err;
++ }
+ in_type = (len == 1 ? CCV_SB : CCV_WC);
+ r = next_state_val(cc, &vs, v, &val_israw, in_israw, in_type, &val_type,
+ &state, env);
+@@ -3658,8 +3661,8 @@
+ acc = &(NCCLASS(anode));
+ r = or_cclass(cc, acc);
+
++ regex_node_free(anode);
+ cc_open_err:
+- regex_node_free(anode);
+ if (r != 0) goto err;
+ }
+ break;
+
diff --git a/devel/oniguruma4/Makefile b/devel/oniguruma4/Makefile
index 8fcc2a1c434c..992bcaf77c7d 100644
--- a/devel/oniguruma4/Makefile
+++ b/devel/oniguruma4/Makefile
@@ -7,6 +7,7 @@
PORTNAME= oniguruma
PORTVERSION= 1.9.3
+PORTREVISION= 1
CATEGORIES= devel
MASTER_SITES= ${MASTER_SITE_RUBY}
MASTER_SITE_SUBDIR= contrib
diff --git a/devel/oniguruma4/files/patch-regparse.c b/devel/oniguruma4/files/patch-regparse.c
new file mode 100644
index 000000000000..f0714d214678
--- /dev/null
+++ b/devel/oniguruma4/files/patch-regparse.c
@@ -0,0 +1,29 @@
+Obtained from [ruby-dev:21263]
+
+Index: regparse.c
+===================================================================
+--- regparse.c (revision 217)
++++ regparse.c (working copy)
+@@ -3571,7 +3571,10 @@
+ in_israw = 1;
+ val_entry:
+ len = WC2MBLEN(env->enc, v);
+- if (len < 0) return len;
++ if (len < 0) {
++ r = len;
++ goto err;
++ }
+ in_type = (len == 1 ? CCV_SB : CCV_WC);
+ r = next_state_val(cc, &vs, v, &val_israw, in_israw, in_type, &val_type,
+ &state, env);
+@@ -3658,8 +3661,8 @@
+ acc = &(NCCLASS(anode));
+ r = or_cclass(cc, acc);
+
++ regex_node_free(anode);
+ cc_open_err:
+- regex_node_free(anode);
+ if (r != 0) goto err;
+ }
+ break;
+
diff --git a/devel/oniguruma5/Makefile b/devel/oniguruma5/Makefile
index 8fcc2a1c434c..992bcaf77c7d 100644
--- a/devel/oniguruma5/Makefile
+++ b/devel/oniguruma5/Makefile
@@ -7,6 +7,7 @@
PORTNAME= oniguruma
PORTVERSION= 1.9.3
+PORTREVISION= 1
CATEGORIES= devel
MASTER_SITES= ${MASTER_SITE_RUBY}
MASTER_SITE_SUBDIR= contrib
diff --git a/devel/oniguruma5/files/patch-regparse.c b/devel/oniguruma5/files/patch-regparse.c
new file mode 100644
index 000000000000..f0714d214678
--- /dev/null
+++ b/devel/oniguruma5/files/patch-regparse.c
@@ -0,0 +1,29 @@
+Obtained from [ruby-dev:21263]
+
+Index: regparse.c
+===================================================================
+--- regparse.c (revision 217)
++++ regparse.c (working copy)
+@@ -3571,7 +3571,10 @@
+ in_israw = 1;
+ val_entry:
+ len = WC2MBLEN(env->enc, v);
+- if (len < 0) return len;
++ if (len < 0) {
++ r = len;
++ goto err;
++ }
+ in_type = (len == 1 ? CCV_SB : CCV_WC);
+ r = next_state_val(cc, &vs, v, &val_israw, in_israw, in_type, &val_type,
+ &state, env);
+@@ -3658,8 +3661,8 @@
+ acc = &(NCCLASS(anode));
+ r = or_cclass(cc, acc);
+
++ regex_node_free(anode);
+ cc_open_err:
+- regex_node_free(anode);
+ if (r != 0) goto err;
+ }
+ break;
+