From f850cf28660c7b9a708767d779c16263668afe65 Mon Sep 17 00:00:00 2001 From: naruse Date: Sun, 26 Oct 2008 16:08:03 +0000 Subject: * ext/nkf/nkf.c (rb_nkf_convert): avoid GC. reported in [ruby-dev:36909] and patched [ruby-dev:36941] by mame. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19953 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ext/nkf/nkf.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'ext/nkf') diff --git a/ext/nkf/nkf.c b/ext/nkf/nkf.c index a0c14b55a4..d9db1de086 100644 --- a/ext/nkf/nkf.c +++ b/ext/nkf/nkf.c @@ -135,6 +135,7 @@ int nkf_split_options(const char *arg) static VALUE rb_nkf_convert(VALUE obj, VALUE opt, VALUE src) { + volatile tmp; reinit(); StringValue(opt); nkf_split_options(RSTRING_PTR(opt)); @@ -155,7 +156,7 @@ rb_nkf_convert(VALUE obj, VALUE opt, VALUE src) StringValue(src); input = (unsigned char *)RSTRING_PTR(src); i_len = RSTRING_LEN(src); - result = rb_str_new(0, i_len*3 + 10); + tmp = result = rb_str_new(0, i_len*3 + 10); output_ctr = 0; output = (unsigned char *)RSTRING_PTR(result); -- cgit v1.2.3