[前][次][番号順一覧][スレッド一覧]

ruby-changes:2713

From: ko1@a...
Date: 13 Dec 2007 09:00:08 +0900
Subject: [ruby-changes:2713] matz - Ruby:r14204 (trunk): * io.c (rb_io_getc): use default external encoding if fptr->enc is

matz	2007-12-13 08:58:58 +0900 (Thu, 13 Dec 2007)

  New Revision: 14204

  Modified files:
    trunk/ChangeLog
    trunk/io.c
    trunk/lib/rubygems/package.rb
    trunk/lib/xsd/charset.rb

  Log:
    * io.c (rb_io_getc): use default external encoding if fptr->enc is
      not set.  [ruby-dev:32565]
    
    * lib/rubygems/package.rb (Gem::TarReader::Entry::rewind): typo fixed.
      [ruby-dev:32565]

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/ChangeLog?r1=14204&r2=14203
  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/lib/rubygems/package.rb?r1=14204&r2=14203
  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/io.c?r1=14204&r2=14203
  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/lib/xsd/charset.rb?r1=14204&r2=14203

Index: ChangeLog
===================================================================
--- ChangeLog	(revision 14203)
+++ ChangeLog	(revision 14204)
@@ -1,3 +1,11 @@
+Thu Dec 13 08:56:01 2007  Yukihiro Matsumoto  <matz@r...>
+
+	* io.c (rb_io_getc): use default external encoding if fptr->enc is
+	  not set.  [ruby-dev:32565]
+
+	* lib/rubygems/package.rb (Gem::TarReader::Entry::rewind): typo fixed.
+	  [ruby-dev:32565]
+
 Thu Dec 13 08:24:16 2007  Yukihiro Matsumoto  <matz@r...>
 
 	* io.c (read_all): should associate default external encoding.
Index: io.c
===================================================================
--- io.c	(revision 14203)
+++ io.c	(revision 14204)
@@ -2132,15 +2132,17 @@
     rb_io_t *fptr;
     int r, n;
     VALUE str;
+    rb_encoding *enc;
 
     GetOpenFile(io, fptr);
     rb_io_check_readable(fptr);
 
+    enc = fptr->enc ? fptr->enc : rb_default_external_encoding();
     READ_CHECK(fptr);
     if (io_fillbuf(fptr) < 0) {
 	return Qnil;
     }
-    r = rb_enc_precise_mbclen(fptr->rbuf+fptr->rbuf_off, fptr->rbuf+fptr->rbuf_off+fptr->rbuf_len, fptr->enc);
+    r = rb_enc_precise_mbclen(fptr->rbuf+fptr->rbuf_off, fptr->rbuf+fptr->rbuf_off+fptr->rbuf_len, enc);
     if ((n = MBCLEN_CHARFOUND(r)) != 0 && n <= fptr->rbuf_len) {
 	str = rb_str_new(fptr->rbuf+fptr->rbuf_off, n);
 	fptr->rbuf_off += n;
@@ -2154,7 +2156,7 @@
             rb_str_cat(str, fptr->rbuf+fptr->rbuf_off, 1);
             fptr->rbuf_off++;
             fptr->rbuf_len--;
-            r = rb_enc_precise_mbclen(RSTRING_PTR(str), RSTRING_PTR(str)+RSTRING_LEN(str), fptr->enc);
+            r = rb_enc_precise_mbclen(RSTRING_PTR(str), RSTRING_PTR(str)+RSTRING_LEN(str), enc);
             if (MBCLEN_NEEDMORE(r)) {
                 goto getc_needmore;
             }
Index: lib/rubygems/package.rb
===================================================================
--- lib/rubygems/package.rb	(revision 14203)
+++ lib/rubygems/package.rb	(revision 14204)
@@ -379,7 +379,7 @@
       end
 
       alias_method :is_directory, :is_directory?
-      alias_method :is_file, :is_file
+      alias_method :is_file, :is_file?
 
       def bytes_read
         @read
Index: lib/xsd/charset.rb
===================================================================
--- lib/xsd/charset.rb	(revision 14203)
+++ lib/xsd/charset.rb	(revision 14204)
@@ -10,7 +10,7 @@
 
 
 module Charset
-  @internal_encoding = $KCODE
+  @internal_encoding = "ASCII"
 
   class XSDError < StandardError; end
   class CharsetError < XSDError; end

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml

[前][次][番号順一覧][スレッド一覧]