regparse.c (parse_char_class): initialize return values before
depth limit check. returned values will be freed in callers
regardless the error. [ruby-core:79624] [Bug #13234]
After some fuzz testing I found a crashing test case.
Great... I can reproduce this. Not sure if this is an "infinite" recursion or just too deep to run on my machine, though.
Do you run a fuzz test for ruby or for your project? If this is something disclosable please do so, because currently ruby lacks such thing.
I fuzz ruby (in this case miniruby binary) with American Fuzzy Lop fuzzer (http://lcamtuf.coredump.cx/afl/). My testing corpus contains files from various open source projects written in ruby. It's all :-)