From 282e828c59b85f9deeafe81277c76480476d9b96 Mon Sep 17 00:00:00 2001 From: nobu Date: Mon, 21 Jan 2008 05:36:16 +0000 Subject: [PATCH] * transcode.c (str_transcode): initialize transcoder in rb_transcoding. [ruby-dev:33234] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15153 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 2 +- transcode.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 0ee31f6a3d..9d249fe148 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,4 +1,4 @@ -Mon Jan 21 14:32:10 2008 Nobuyoshi Nakada +Mon Jan 21 14:36:14 2008 Nobuyoshi Nakada * transcode.c (str_transcode): initialize transcoder in rb_transcoding. [ruby-dev:33234] diff --git a/transcode.c b/transcode.c index 370bd06c33..1b8e8ee9e5 100644 --- a/transcode.c +++ b/transcode.c @@ -311,14 +311,14 @@ str_transcode(int argc, VALUE *argv, VALUE *self) return -1; } - my_transcoding.transcoder = my_transcoder; - while (!final_encoding) { /* loop for multistep transcoding */ /* later, maybe use smaller intermediate strings for very long strings */ if (!(my_transcoder = transcode_dispatch(from_e, to_e))) { rb_raise(rb_eArgError, "transcoding not supported (from %s to %s)", from_e, to_e); } + my_transcoding.transcoder = my_transcoder; + if (my_transcoder->preprocessor) { fromp = sp = (unsigned char *)RSTRING_PTR(str); slen = RSTRING_LEN(str);