Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
159 commits
Select commit Hold shift + click to select a range
4bcc27c
merge revision(s) r45891,r45893,r45895:
nagachika May 10, 2014
472b47f
merge revision(s) r45901:
nagachika May 10, 2014
f565774
merge revision(s) r45360,r45361: [Backport #9651]
nagachika May 12, 2014
a40b9a3
merge revision(s) r45758,r45759: [Backport #9759]
nagachika May 12, 2014
1400374
merge revision(s) r45637: [Backport #9726]
nagachika May 12, 2014
eff0f73
merge revision(s) r45367,r45387,r45388,r45389: [Backport #9475]
nagachika May 15, 2014
75edd5f
merge revision(s) r45374: [Backport #8405]
nagachika May 15, 2014
d41b88b
merge revision(s) r45405,r45408: [Backport #9669] [Backport #9740]
nagachika May 18, 2014
e973ab4
merge revision(s) r45553,r45554,r45557,r45558,r45561,r45566,r45567: […
nagachika May 18, 2014
a800c86
merge revision(s) r46010:
nagachika May 19, 2014
cbca421
merge revision(s) r45045,r45046,r45530: [Backport #9697]
nagachika May 22, 2014
f6a385b
merge revision(s) r45520: [Backport #9706]
nagachika May 27, 2014
d5705f5
merge revision(s) r45529: [Backport #8182]
nagachika May 27, 2014
adbf635
merge revision(s) r45534: [Backport #9709]
nagachika May 27, 2014
0d5f521
merge revision(s) r45562: [Backport #9727]
nagachika May 27, 2014
2a1acd5
merge revision(s) r45179,r45564,r45565,r45584,r45585: [Backport #9721]
nagachika May 27, 2014
148bce7
merge revision(s) r45604: [Backport #9748]
nagachika May 27, 2014
f5a5623
merge revision(s) r45646: [Backport #9765]
nagachika May 28, 2014
9dee6a1
merge revision(s) r45701: [Backport #9771]
nagachika May 28, 2014
88f5032
merge revision(s) r45716: [Backport #9665]
nagachika May 28, 2014
5328a14
merge revision(s) r45187,r45205,r45206,r45212,r45213: [Backport #9570]
nagachika May 29, 2014
66c9e45
merge revision(s) r45178,r45180,r45183: [Backport #9568]
nagachika May 29, 2014
9e08fce
merge revision(s) r45350: [Backport #9645]
nagachika Jun 1, 2014
ab6ca12
merge revision(s) r45320,r45321: [Backport #9622]
nagachika Jun 1, 2014
122d84a
merge revision(s) r45365: [Backport #9656]
nagachika Jun 1, 2014
2b1813e
merge revision(s) r45364,r45395,r45396,r45403,r45406: [Backport #9652]
nagachika Jun 1, 2014
c1129dc
merge revision(s) r45471: [Backport #9688]
nagachika Jun 1, 2014
8416142
merge revision(s) r45302: [Backport #9616]
nagachika Jun 2, 2014
e6d91ff
merge revision(s) r45517,r45544,r45924:
nagachika Jun 6, 2014
e541233
* test/ruby/test_string (test_LSHIFT_neary_long_max): extend timeout.
nagachika Jun 10, 2014
c8139d2
merge revision(s) r45207,r45208,r45209,r45210: [Backport #9575]
nagachika Jun 10, 2014
c4830ed
merge revision(s) r45378: [Backport #9658] [Backport #9866]
nagachika Jun 10, 2014
11f564b
merge revision(s) r45308,r45316: [Backport #9621]
nagachika Jun 10, 2014
d10b8c6
merge revision(s) r45224,r45228: [Backport #9838]
nagachika Jun 11, 2014
6f38268
merge revision(s) r45287,r45288,r45289,r45290: [Backport #9600]
nagachika Jun 16, 2014
22291da
merge revision(s) r45521,r45523,r45551: [Backport #9699]
nagachika Jun 16, 2014
ebdccc0
merge revision(s) r45724: [Backport #9776]
nagachika Jun 16, 2014
8a8177b
merge revision(s) r45954: [Backport #8358]
nagachika Jun 19, 2014
f231528
merge revision(s) r44712,r44715,r44716,r44722,r44725,r44726,r44753: […
nagachika Jun 19, 2014
0f0a6ca
merge revision(s) r46060: [Backport #9627]
nagachika Jun 22, 2014
cb5f0a4
merge revision(s) r45899: [Backport #9751]
nagachika Jun 22, 2014
2161ddb
merge revision(s) r45874: [Backport #9813]
nagachika Jun 22, 2014
7a5fbf3
merge revision(s) r46194: [Backport #9835]
nagachika Jun 23, 2014
b2194eb
* 2014-06-24
matzbot Jun 23, 2014
80d7b9f
merge revision(s) r45947,r45951: [Backport #9739] [Backport #9844]
nagachika Jun 23, 2014
c0a18e2
merge revision(s) r46182: [Backport #9872]
nagachika Jun 23, 2014
31f22ea
merge revision(s) r46313: [Backport #9896]
nagachika Jun 23, 2014
de8bfb3
merge revision(s) r45540: [Backport #9911]
nagachika Jun 23, 2014
bf18eb2
merge revision(s) r45845,r45846,r45847: [Backport #9486]
nagachika Jun 28, 2014
f57b6ff
merge revision(s) r46243,r46244: [Backport #9882] [Backport #9883]
nagachika Jun 28, 2014
9f7bc30
merge revision(s) r46598: [Backport #9991]
nagachika Jun 28, 2014
92c8359
merge revision(s) r44535,r44536: [Backport #9321]
nagachika Jun 29, 2014
3214160
merge revision(s) r46485: [Backport #9897]
nagachika Jun 29, 2014
bc1e48b
merge revision(s) r44505: [Backport #9994]
nagachika Jun 29, 2014
03fe035
merge revision(s) r46098: [Backport #9861]
nagachika Jun 29, 2014
3ef7c81
merge revision(s) r45793: [Backport #9608]
nagachika Jun 29, 2014
c1a34b1
merge revision(s) r45863,r45871: [Backport #9750]
nagachika Jun 29, 2014
23b95d3
merge revision(s) r45979: [Backport #9847]
nagachika Jun 29, 2014
080fef3
merge revision(s) r46075: [Backport #9856]
nagachika Jun 29, 2014
b751c78
merge revision(s) r46233: [Backport #9878]
nagachika Jun 29, 2014
ef4e4ce
merge revision(s) r46331: [Backport #9885]
nagachika Jun 29, 2014
1b28556
merge revision(s) r46457,r46458: [Backport #9949]
nagachika Jun 29, 2014
40e342c
merge revision(s) r46342: [Backport #9954]
nagachika Jun 29, 2014
483fcef
merge revision(s) r45399,r45400,r46036,r46037: [Backport #416]
nagachika Jun 30, 2014
e700ac2
merge revision(s) r46360,r46372: [Backport #8625]
nagachika Jun 30, 2014
94a893e
merge revision(s) r45858,r45859,r45860,r45861,r46638: [Backport #9811]
nagachika Jul 2, 2014
a23eb43
merge revision(s) r45495: [Backport #9662]
nagachika Jul 2, 2014
5e75994
merge revision(s) r45462,r45463,r45466: [Backport #9684]
nagachika Jul 3, 2014
4f79338
merge revision(s) r45786: [Backport #9738]
nagachika Jul 3, 2014
067784a
merge revision(s) r45896: [Backport #9773]
nagachika Jul 3, 2014
96686c0
merge revision(s) r46095: [Backport #9819]
nagachika Jul 3, 2014
bf3a2f3
merge revision(s) r46099: [Backport #9814]
nagachika Jul 3, 2014
066a450
merge revision(s) r45344: [Backport #9543]
nagachika Jul 6, 2014
d5addff
merge revision(s) r45642,r45643: [Backport #9646] [Backport #9729]
nagachika Jul 6, 2014
02e809a
merge revision(s) r46780: [Backport #9499]
nagachika Jul 11, 2014
ce99468
merge revision(s) r45423,r45424: [Backport #9674]
nagachika Jul 13, 2014
5acdbee
merge revision(s) r46778: [Backport #10019]
nagachika Jul 13, 2014
0b7bb7f
merge revision(s) r46416: [Backport #9942]
nagachika Jul 13, 2014
b373075
merge revision(s) r46417,r46418: [Backport #9939]
nagachika Jul 13, 2014
390e923
merge revision(s) r46368,r46371: [Backport #9913]
nagachika Jul 13, 2014
c7391a0
merge revision(s) r44516,r46159,r46196: [Backport #8523]
nagachika Jul 13, 2014
bdb5ef9
merge revision(s) r46344: [Backport #9902]
nagachika Jul 18, 2014
f30e047
merge revision(s) r46899,r46903,r46904:
nagachika Jul 23, 2014
e7edc10
merge revision(s) r45144: [Backport #9544]
nagachika Jul 23, 2014
755128c
merge revision(s) r45720: [Backport #9571]
nagachika Jul 23, 2014
cd5dc29
merge revision(s) r45827: [Backport #9618]
nagachika Jul 23, 2014
44c8b12
merge revision(s) r45034,r45037:
nagachika Jul 23, 2014
15d2f7a
merge revision(s) r45953,r45961: [Backport #9767]
nagachika Jul 23, 2014
75a999b
merge revision(s) r46419,r46429: [Backport #9940]
nagachika Jul 30, 2014
235af84
merge revision(s) r46463: [Backport #9957]
nagachika Jul 30, 2014
c0e3a07
merge revision(s) r46464: [Backport #9959]
nagachika Jul 30, 2014
9604c68
merge revision(s) r46471: [Backport #9964]
nagachika Jul 30, 2014
0ee5ad5
merge revision(s) r46649: [Backport #10005]
nagachika Aug 2, 2014
5816247
merge revision(s) r44577,r45097,r45330,r45331,r45354,r45356: [Backpor…
nagachika Aug 2, 2014
e436fee
merge revision(s) r44610,r44617:
nagachika Aug 3, 2014
8a504f7
merge revision(s) r46465,r46469,r46484: [Backport #9961]
nagachika Aug 3, 2014
73a3fc3
merge revision(s) r46345,r46346: [Backport #9903]
nagachika Aug 3, 2014
6508fff
merge revision(s) r46550: [Backport #9977]
nagachika Aug 3, 2014
f91bd16
merge revision(s) r46557,r46565: [Backport #9978]
nagachika Aug 3, 2014
b57a859
merge revision(s) r46570: [Backport #9983]
nagachika Aug 3, 2014
69f7b4f
merge revision(s) r46585,r46595,r46822: [Backport #9977] [Backport #9…
nagachika Aug 3, 2014
39b896c
merge revision(s) r45676,r45677: [Backport #9769]
nagachika Aug 8, 2014
9967966
merge revision(s) r46775: [Backport #10016]
nagachika Aug 11, 2014
fad3a35
merge revision(s) r46382,r46384,r46913: [Backport #9914]
nagachika Aug 11, 2014
58e57a7
merge revision(s) r46151,r46165: [Backport #9865]
nagachika Aug 11, 2014
c65eb7b
merge revision(s) r46241: [Backport #9875]
nagachika Aug 11, 2014
659fd08
merge revision(s) r46408,r46410,r46413,r46414,r46424,r46436,r46437: […
nagachika Aug 18, 2014
4ac47f3
merge revision(s) r46481: [Backport #9966]
nagachika Aug 18, 2014
be2ae51
merge r46831 partially. extracted commits are as follows.
nagachika Aug 19, 2014
1f5aeeb
merge revision(s) r45349,r45837,r45838: [Backport #9521] [Backport #9…
nagachika Aug 20, 2014
f3274f5
merge revision(s) r45542,r45543: [Backport #9717]
nagachika Aug 20, 2014
def5eab
merge revision(s) r46896,r46897,r46898: [Backport #10078]
nagachika Aug 22, 2014
50d3445
merge revision(s) r47037: [Backport #10106]
nagachika Aug 22, 2014
7a1fdd6
merge revision(s) r47090: [Backport #10114]
nagachika Aug 24, 2014
e552b9a
merge revision(s) r47098: [Backport #10117]
nagachika Aug 24, 2014
da8e7cc
merge revision(s) r45503,r45504,r45508,r45509,r47275: [Backport #9692]
nagachika Aug 25, 2014
51fa567
merge revision(s) r45512,r45513,r45515: [Backport #9698]
nagachika Aug 25, 2014
73ce2f3
merge revision(s) r45537: [Backport #9710]
nagachika Aug 25, 2014
66ea2f0
merge revision(s) r45885: [Backport #9818]
nagachika Aug 25, 2014
fad6928
merge revision(s) r46441: [Backport #9946]
nagachika Aug 30, 2014
1cb08e9
merge revision(s) r47153: [Backport #10127]
nagachika Aug 30, 2014
a223ff8
merge revision(s) r46387: [Backport #9607]
nagachika Aug 30, 2014
7706aa1
merge revision(s) r45911,r45912,r45917,r45918,r45919: [Backport #9820]
nagachika Sep 1, 2014
b35781d
merge revision(s) r46547: [Backport #9976]
nagachika Sep 1, 2014
9e95cee
merge revision(s) r47362: [Backport #9984]
nagachika Sep 3, 2014
b8db23a
merge revision(s) r46569: [Backport #9982]
nagachika Sep 3, 2014
348e55c
merge revision(s) r46876: [Backport #10039]
nagachika Sep 3, 2014
645588b
merge revision(s) r47217: [Backport #10062]
nagachika Sep 3, 2014
3598e34
merge revision(s) r45046,r45047,r45063,r45087,r45146,r45150,r45151,r4…
nagachika Sep 5, 2014
239068c
merge revision(s) r44916: [Backport #10043]
nagachika Sep 5, 2014
8d728c2
merge revision(s) r46796: [Backport #10008]
nagachika Sep 5, 2014
d64aa61
merge revision(s) r47327: [Backport #10008]
nagachika Sep 5, 2014
0f6e3df
Backport r47425
Sep 6, 2014
9dfb0f3
Bump patch level from r47426
Sep 6, 2014
2eb09f3
merge revision(s) r47190: [Backport #10139]
nagachika Sep 9, 2014
860ec67
merge revision(s) r47191: [Backport #10140]
nagachika Sep 9, 2014
8f8f174
merge revision(s) r47196: [Backport #10144]
nagachika Sep 9, 2014
3de9369
merge revision(s) r47221: [Backport #10149]
nagachika Sep 9, 2014
e315e5e
merge revision(s) r47288: [Backport #10153]
nagachika Sep 9, 2014
ed1c1f9
merge revision(s) r47248: [Backport #10161]
nagachika Sep 10, 2014
052b926
merge r46831 partially. extracted commits are as follows. [Bug #9344]
nagachika Sep 10, 2014
9755952
merge revision(s) r46501,r47372,r47460: [Backport #10191]
nagachika Sep 10, 2014
1cbde5b
merge revision(s) r46391,r46395: [Backport #9766]
nagachika Sep 14, 2014
2e098c3
merge revision(s) r47457: [Backport #8315]
nagachika Sep 14, 2014
2b8928d
merge revision(s) r44459,r44470: [Backport #8315]
nagachika Sep 15, 2014
01cee45
merge revision(s) r47590: [Backport #10241]
nagachika Sep 15, 2014
4ad1bd4
merge revision(s) r47591: [Backport #10242]
nagachika Sep 15, 2014
f5c3ada
merge revision(s) r46495,r46499: [Backport #9971]
nagachika Sep 15, 2014
9a0a3f7
* version.h (RUBY_VERSION): bump RUBY_VERSION to 2.1.3.
nagachika Sep 18, 2014
4cb2998
add tag v2_1_3
nagachika Sep 18, 2014
3d8ac37
Merge tag 'v2_1_3' into dbussink/ruby-2-1-3
dbussink Sep 20, 2014
39e9044
Use stock heap_set_increment implementation and calling behavior
dbussink Sep 20, 2014
ddbf600
Use upstream socket implementation
dbussink Sep 20, 2014
e5d63cb
Fix indenting to match upstream
dbussink Sep 20, 2014
4c75f86
Cleanup type conversions
dbussink Sep 22, 2014
da6989e
Require env_util for assert_in_out_err
dbussink Sep 22, 2014
6b25e9a
array.c: GC guard
nobu Sep 22, 2014
da7ec40
merge revision(s) r47696,r47697: [Backport #10279]
nagachika Sep 23, 2014
741436c
stringio.c: ASCII-8BIT StringIO rejects no encodings
nobu Sep 26, 2014
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
merge r46831 partially. extracted commits are as follows.
k-takata/Onigmo@b9fba1d
k-takata/Onigmo@c1fc76b
k-takata/Onigmo@a0efc0a
k-takata/Onigmo@c7cda4e
[Bug ruby#8716]

* include/ruby/oniguruma.h (ONIG_MAX_CAPTURE_GROUP_NUM,
  ONIGERR_TOO_MANY_CAPTURE_GROUPS): add cheking the number of capture
  groups.

* regerror.c (onig_error_code_to_format): ditto.

* regparse.c (scan_env_add_mem_entry): ditto.

* regexec.c (onig_region_copy, match_at): fix: segmation fault occurs
  when many groups are used.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@47223 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
  • Loading branch information
nagachika committed Aug 19, 2014
commit be2ae510cea7959fe0dbc0289afb5d7970ea9cf9
20 changes: 20 additions & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,23 @@
Tue Aug 19 23:31:48 2014 CHIKANAGA Tomoyuki <[email protected]>

merge r46831 partially. extracted commits are as follows.
https://github.com/k-takata/Onigmo/commit/b9fba1dc63ccb42a86e934011b468e6022fabb74
https://github.com/k-takata/Onigmo/commit/c1fc76b9bd463948ffc5058bc352bf93732f0314
https://github.com/k-takata/Onigmo/commit/a0efc0a200f7108ca3d5ac3039c8f952e0051619
https://github.com/k-takata/Onigmo/commit/c7cda4ed5676167b0d01bb5555724f6164fbdb13
[Bug #8716]

* include/ruby/oniguruma.h (ONIG_MAX_CAPTURE_GROUP_NUM,
ONIGERR_TOO_MANY_CAPTURE_GROUPS): add cheking the number of capture
groups.

* regerror.c (onig_error_code_to_format): ditto.

* regparse.c (scan_env_add_mem_entry): ditto.

* regexec.c (onig_region_copy, match_at): fix: segmation fault occurs
when many groups are used.

Mon Aug 18 23:38:21 2014 Nobuyoshi Nakada <[email protected]>

* encoding.c (enc_find): [DOC] never accepted a symbol.
Expand Down
2 changes: 2 additions & 0 deletions include/ruby/oniguruma.h
Original file line number Diff line number Diff line change
Expand Up @@ -338,6 +338,7 @@ int onigenc_str_bytelen_null P_((OnigEncoding enc, const OnigUChar* p));
/* config parameters */
#define ONIG_NREGION 10
#define ONIG_MAX_BACKREF_NUM 1000
#define ONIG_MAX_CAPTURE_GROUP_NUM 32767
#define ONIG_MAX_REPEAT_NUM 100000
#define ONIG_MAX_MULTI_BYTE_RANGES_NUM 10000
/* constants */
Expand Down Expand Up @@ -582,6 +583,7 @@ ONIG_EXTERN const OnigSyntaxType* OnigDefaultSyntax;
#define ONIGERR_NEVER_ENDING_RECURSION -221
#define ONIGERR_GROUP_NUMBER_OVER_FOR_CAPTURE_HISTORY -222
#define ONIGERR_INVALID_CHAR_PROPERTY_NAME -223
#define ONIGERR_TOO_MANY_CAPTURE_GROUPS -224
#define ONIGERR_INVALID_CODE_POINT_VALUE -400
#define ONIGERR_INVALID_WIDE_CHAR_VALUE -400
#define ONIGERR_TOO_BIG_WIDE_CHAR_VALUE -401
Expand Down
2 changes: 2 additions & 0 deletions regerror.c
Original file line number Diff line number Diff line change
Expand Up @@ -133,6 +133,8 @@ onig_error_code_to_format(OnigPosition code)
p = "too short multibyte code string"; break;
case ONIGERR_TOO_BIG_BACKREF_NUMBER:
p = "too big backref number"; break;
case ONIGERR_TOO_MANY_CAPTURE_GROUPS:
p = "too many capture groups are specified"; break;
case ONIGERR_INVALID_BACKREF:
#ifdef USE_NAMED_GROUP
p = "invalid backref number/name"; break;
Expand Down
37 changes: 32 additions & 5 deletions regexec.c
Original file line number Diff line number Diff line change
Expand Up @@ -444,9 +444,26 @@ onig_region_copy(OnigRegion* to, OnigRegion* from)



#define STACK_INIT(alloc_addr, ptr_num, stack_num) do {\
if (msa->stack_p) {\
#define MAX_PTR_NUM 100

#define STACK_INIT(alloc_addr, heap_addr, ptr_num, stack_num) do {\
if (ptr_num > MAX_PTR_NUM) {\
alloc_addr = (char* )xmalloc(sizeof(OnigStackIndex) * (ptr_num));\
heap_addr = alloc_addr;\
if (msa->stack_p) {\
stk_alloc = (OnigStackType* )(msa->stack_p);\
stk_base = stk_alloc;\
stk = stk_base;\
stk_end = stk_base + msa->stack_n;\
} else {\
stk_alloc = (OnigStackType* )xalloca(sizeof(OnigStackType) * (stack_num));\
stk_base = stk_alloc;\
stk = stk_base;\
stk_end = stk_base + (stack_num);\
}\
} else if (msa->stack_p) {\
alloc_addr = (char* )xalloca(sizeof(OnigStackIndex) * (ptr_num));\
heap_addr = NULL;\
stk_alloc = (OnigStackType* )(msa->stack_p);\
stk_base = stk_alloc;\
stk = stk_base;\
Expand All @@ -455,6 +472,7 @@ onig_region_copy(OnigRegion* to, OnigRegion* from)
else {\
alloc_addr = (char* )xalloca(sizeof(OnigStackIndex) * (ptr_num)\
+ sizeof(OnigStackType) * (stack_num));\
heap_addr = NULL;\
stk_alloc = (OnigStackType* )(alloc_addr + sizeof(OnigStackIndex) * (ptr_num));\
stk_base = stk_alloc;\
stk = stk_base;\
Expand Down Expand Up @@ -529,7 +547,11 @@ stack_double(OnigStackType** arg_stk_base, OnigStackType** arg_stk_end,
#define STACK_ENSURE(n) do {\
if (stk_end - stk < (n)) {\
int r = stack_double(&stk_base, &stk_end, &stk, stk_alloc, msa);\
if (r != 0) { STACK_SAVE; return r; } \
if (r != 0) {\
STACK_SAVE;\
if (xmalloc_base) xfree(xmalloc_base);\
return r;\
}\
}\
} while(0)

Expand Down Expand Up @@ -1325,6 +1347,7 @@ match_at(regex_t* reg, const UChar* str, const UChar* end,
UChar *p = reg->p;
UChar *pkeep;
char *alloca_base;
char *xmalloc_base = NULL;
OnigStackType *stk_alloc, *stk_base, *stk, *stk_end;
OnigStackType *stkp; /* used as any purpose. */
OnigStackIndex si;
Expand All @@ -1340,7 +1363,7 @@ match_at(regex_t* reg, const UChar* str, const UChar* end,
/* Stack #0 is used to store the pattern itself and used for (?R), \g<0>, etc. */
n = reg->num_repeat + (reg->num_mem + 1) * 2;

STACK_INIT(alloca_base, n, INIT_MATCH_STACK_SIZE);
STACK_INIT(alloca_base, xmalloc_base, n, INIT_MATCH_STACK_SIZE);
pop_level = reg->stack_pop_level;
num_mem = reg->num_mem;
repeat_stk = (OnigStackIndex* )alloca_base;
Expand All @@ -1354,7 +1377,7 @@ match_at(regex_t* reg, const UChar* str, const UChar* end,
/* Stack #0 not is used. */
n = reg->num_repeat + reg->num_mem * 2;

STACK_INIT(alloca_base, n, INIT_MATCH_STACK_SIZE);
STACK_INIT(alloca_base, xmalloc_base, n, INIT_MATCH_STACK_SIZE);
pop_level = reg->stack_pop_level;
num_mem = reg->num_mem;
repeat_stk = (OnigStackIndex* )alloca_base;
Expand Down Expand Up @@ -2916,20 +2939,24 @@ match_at(regex_t* reg, const UChar* str, const UChar* end,

finish:
STACK_SAVE;
if (xmalloc_base) xfree(xmalloc_base);
return best_len;

#ifdef ONIG_DEBUG
stack_error:
STACK_SAVE;
if (xmalloc_base) xfree(xmalloc_base);
return ONIGERR_STACK_BUG;
#endif

bytecode_error:
STACK_SAVE;
if (xmalloc_base) xfree(xmalloc_base);
return ONIGERR_UNDEFINED_BYTECODE;

unexpected_bytecode_error:
STACK_SAVE;
if (xmalloc_base) xfree(xmalloc_base);
return ONIGERR_UNEXPECTED_BYTECODE;
}

Expand Down
2 changes: 2 additions & 0 deletions regparse.c
Original file line number Diff line number Diff line change
Expand Up @@ -978,6 +978,8 @@ scan_env_add_mem_entry(ScanEnv* env)
Node** p;

need = env->num_mem + 1;
if (need > ONIG_MAX_CAPTURE_GROUP_NUM)
return ONIGERR_TOO_MANY_CAPTURE_GROUPS;
if (need >= SCANENV_MEMNODES_SIZE) {
if (env->mem_alloc <= need) {
if (IS_NULL(env->mem_nodes_dynamic)) {
Expand Down
6 changes: 3 additions & 3 deletions version.h
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
#define RUBY_VERSION "2.1.2"
#define RUBY_RELEASE_DATE "2014-08-18"
#define RUBY_PATCHLEVEL 202
#define RUBY_RELEASE_DATE "2014-08-20"
#define RUBY_PATCHLEVEL 203

#define RUBY_RELEASE_YEAR 2014
#define RUBY_RELEASE_MONTH 8
#define RUBY_RELEASE_DAY 18
#define RUBY_RELEASE_DAY 20

#include "ruby/version.h"

Expand Down