From e0ba59b708edb0fb5fdde4c7a2364d5e006705f7 Mon Sep 17 00:00:00 2001 From: naruse Date: Sun, 8 Apr 2012 19:17:32 +0000 Subject: Additional experimental fix for r35261. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35264 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ext/json/generator/generator.c | 1 - ext/json/generator/generator.h | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) (limited to 'ext/json/generator') diff --git a/ext/json/generator/generator.c b/ext/json/generator/generator.c index 6eea7ff148..21fef2b657 100644 --- a/ext/json/generator/generator.c +++ b/ext/json/generator/generator.c @@ -762,7 +762,6 @@ static void generate_json_bignum(FBuffer *buffer, VALUE Vstate, JSON_Generator_S { VALUE tmp = rb_funcall(obj, i_to_s, 0); fbuffer_append_str(buffer, tmp); - RB_GC_GUARD(tmp); } static void generate_json_float(FBuffer *buffer, VALUE Vstate, JSON_Generator_State *state, VALUE obj) diff --git a/ext/json/generator/generator.h b/ext/json/generator/generator.h index 3220178a8f..4958cf094d 100644 --- a/ext/json/generator/generator.h +++ b/ext/json/generator/generator.h @@ -105,6 +105,7 @@ typedef struct JSON_Generator_StateStruct { Data_Get_Struct(Vstate, JSON_Generator_State, state); \ buffer = cState_prepare_buffer(Vstate); \ generate_json_##type(buffer, Vstate, state, self); \ + RB_GC_GUARD(Vstate); \ return fbuffer_to_s(buffer) static VALUE mHash_to_json(int argc, VALUE *argv, VALUE self); -- cgit v1.2.3