From 9c24fed339c77552223d5da339a1e58419bd0b71 Mon Sep 17 00:00:00 2001 From: nobu Date: Sat, 13 Oct 2007 16:32:40 +0000 Subject: * encoding.c (rb_cEncoding): new Encoding class. * encoding.c (rb_to_encoding, rb_to_encoding_index): helper functions. * encoding.c (rb_obj_encoding): return Encoding object now. * gc.c (garbage_collect): mark Encoding objects. * string.c (rb_str_force_encoding): accept Encoding object as well as encoding name. * include/ruby/encoding.h (rb_to_encoding_index, rb_to_encoding): prototypes. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13692 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- gc.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'gc.c') diff --git a/gc.c b/gc.c index 9bbca22588..0e5840e651 100644 --- a/gc.c +++ b/gc.c @@ -1456,6 +1456,8 @@ mark_current_machine_context(rb_thread_t *th) #endif } +void rb_gc_mark_encodings(void); + static int garbage_collect(void) { @@ -1490,6 +1492,7 @@ garbage_collect(void) rb_gc_mark_threads(); rb_gc_mark_symbols(); + rb_gc_mark_encodings(); /* mark protected global variables */ for (list = global_List; list; list = list->next) { -- cgit v1.2.3