From: tomo Date: Sat, 27 Sep 2008 06:57:57 +0000 (+0000) Subject: (func_for_each_object): Fix bug about GC-protection. X-Git-Tag: r21-4-21-chise-0_24-5^20~6 X-Git-Url: http://git.chise.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=586931afc9456a8b76a07a231ec15734a30e0f80;p=chise%2Fxemacs-chise.git.1 (func_for_each_object): Fix bug about GC-protection. --- diff --git a/src/concord.c b/src/concord.c index faab23c..73b6047 100644 --- a/src/concord.c +++ b/src/concord.c @@ -895,7 +895,7 @@ func_for_each_object (CONCORD_String object_id, CONCORD_Feature feature, CONCORD_String value) { - struct gcpro gcpro1, gcpro2, gcpro3; + struct gcpro gcpro1, gcpro2; Lisp_Object obj, val, ret; #if 0 @@ -912,7 +912,6 @@ func_for_each_object (CONCORD_String object_id, obj = Fconcord_make_object (for_each_object_closure->genre, obj, for_each_object_closure->ds); - UNGCPRO; #if 0 val = read_from_c_string (CONCORD_String_data (value), CONCORD_String_size (value) ); @@ -923,7 +922,8 @@ func_for_each_object (CONCORD_String object_id, Qfile_name), Qnil, Qnil)); #endif - GCPRO3 (obj, val, ret); + UNGCPRO; + GCPRO2 (obj, val); ret = call2 (for_each_object_closure->function, obj, val); UNGCPRO; for_each_object_closure->ret = ret;