From: kentkt@... Date: 2014-04-19T06:48:55+00:00 Subject: [ruby-dev:48110] [ruby-trunk - Bug #8716] segmation fault 正規表現で大量のグループを利用時 Issue #8716 has been updated by Ken Takata. キャプチャグループの数を `ONIG_MAX_CAPTURE_GROUP_NUM` (32767) 個に制限することにしました。 それに合わせて、`ONIGERR_TOO_MANY_CAPTURE_GROUPS` というエラーコードを新設することにしました。 https://github.com/k-takata/Onigmo/commit/c7cda4ed5676167b0d01bb5555724f6164fbdb13 `tmp/ruby-2.0.x` ブランチも更新済みです。 # ブランチ名をそろそろどうにかすべきかも ---------------------------------------- Bug #8716: segmation fault 正規表現で大量のグループを利用時 https://bugs.ruby-lang.org/issues/8716#change-46253 * Author: taka-yoshi taka * Status: Assigned * Priority: Normal * Assignee: Ken Takata * Category: regexp * Target version: current: 2.2.0 * ruby -v: trunk * Backport: ---------------------------------------- =begin WindowsとOS Xで検証しました。 *再現手順 ruby 2.0.0p247 (2013-06-27) [x64-mingw32] a="()" (32767.times{a<<'()'} eval "/#{a}/=~''" *再現手順 ruby 2.0.0p0 (2013-02-24 revision 39474) [x86_64-darwin12.2.1] a="()" (1<<21).times{a<<'()'} eval "/#{a}/=~''" 以上よろしくお願いします。 =end -- https://bugs.ruby-lang.org/