From: nobu@... Date: 2014-04-21T05:11:57+00:00 Subject: [ruby-dev:48116] [ruby-trunk - Bug #9765] [Closed] StringIO#putc is unnaware of encoding Issue #9765 has been updated by Nobuyoshi Nakada. Status changed from Assigned to Closed % Done changed from 0 to 100 Applied in changeset r45646. ---------- stringio.c: non-ascii encoding * ext/stringio/stringio.c (strio_putc): fix for non-ascii encoding, like as IO#putc. [ruby-dev:48114] [Bug #9765] ---------------------------------------- Bug #9765: StringIO#putc is unnaware of encoding https://bugs.ruby-lang.org/issues/9765#change-46272 * Author: Nobuyoshi Nakada * Status: Closed * Priority: Normal * Assignee: Nobuyoshi Nakada * Category: ext * Target version: current: 2.2.0 * ruby -v: r45637 * Backport: 2.0.0: REQUIRED, 2.1: REQUIRED ---------------------------------------- `IO#putc`はエンコーディングを意識しますが、`StringIO#putc`がしていません。 ~~~ruby IO.pipe{|r,w| w.putc("\u{3042}"); w.putc(0x3044); w.close; p r.read} # => "あD" require 'stringio' sio = StringIO.new(""); sio.putc("\u{3042}"); sio.putc(0x3044); p sio.string # => "\xE3D" ~~~ -- https://bugs.ruby-lang.org/