ruby-changes:7240
From: akr <ko1@a...>
Date: Fri, 22 Aug 2008 02:45:22 +0900 (JST)
Subject: [ruby-changes:7240] Ruby:r18759 (trunk): * io.c (rb_io_extract_modeenc): use rb_check_to_integer to test
akr 2008-08-22 02:44:38 +0900 (Fri, 22 Aug 2008) New Revision: 18759 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=18759 Log: * io.c (rb_io_extract_modeenc): use rb_check_to_integer to test integer. Modified files: trunk/ChangeLog trunk/io.c Index: ChangeLog =================================================================== --- ChangeLog (revision 18758) +++ ChangeLog (revision 18759) @@ -1,3 +1,8 @@ +Fri Aug 22 02:42:35 2008 Tanaka Akira <akr@f...> + + * io.c (rb_io_extract_modeenc): use rb_check_to_integer to test + integer. + Fri Aug 22 02:25:04 2008 Tanaka Akira <akr@f...> * iseq.c (iseq_inspect): don't raise on uninitialized object. Index: io.c =================================================================== --- io.c (revision 18758) +++ io.c (revision 18759) @@ -3813,6 +3813,7 @@ int modenum, flags; rb_encoding *enc, *enc2; int has_enc = 0; + VALUE intmode; enc = NULL; enc2 = NULL; @@ -3821,11 +3822,11 @@ flags = FMODE_READABLE; modenum = O_RDONLY; } - else if (FIXNUM_P(mode)) { - modenum = FIX2INT(mode); + else if (!NIL_P(intmode = rb_check_to_integer(mode, "to_int"))) { + modenum = NUM2INT(intmode); flags = rb_io_modenum_flags(modenum); } - else { /* xxx: Bignum, to_int */ + else { const char *p; SafeStringValue(mode); p = StringValueCStr(mode); -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/