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