diff options
author | knu <knu@FreeBSD.org> | 2003-08-28 00:06:06 +0800 |
---|---|---|
committer | knu <knu@FreeBSD.org> | 2003-08-28 00:06:06 +0800 |
commit | b152fb557bcedb6ff1b55c6fff095b7e7d22a75e (patch) | |
tree | 5da2184eae7371055b9ebe3bb53d509ae6147ce7 /devel | |
parent | 78603a2e4bbc8f108507f95c2184edf5fb985818 (diff) | |
download | freebsd-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/Makefile | 1 | ||||
-rw-r--r-- | devel/oniguruma/files/patch-regparse.c | 29 | ||||
-rw-r--r-- | devel/oniguruma4/Makefile | 1 | ||||
-rw-r--r-- | devel/oniguruma4/files/patch-regparse.c | 29 | ||||
-rw-r--r-- | devel/oniguruma5/Makefile | 1 | ||||
-rw-r--r-- | devel/oniguruma5/files/patch-regparse.c | 29 |
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; + |