summaryrefslogtreecommitdiff
path: root/transcode.c
diff options
context:
space:
mode:
authorakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-09-09 16:06:54 +0000
committerakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-09-09 16:06:54 +0000
commit817a623d13b54d10f3d6492391aaeb2ce25a7f1c (patch)
tree0f49e942ebe5c3c50af09c1ddfd01963a54d7d8e /transcode.c
parent1a9887acc0630042d7cf9c57b7a85dcfbcf6d873 (diff)
* enc/trans/newline.trans (rb_universal_newline): swap src_encoding
and dst_encoding. * transcode.c (rb_econv_decorate_at): call get_transcoder_entry only once. (rb_econv_binmode): follow universal_newline change. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19276 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'transcode.c')
-rw-r--r--transcode.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/transcode.c b/transcode.c
index 0fbbd0a11f..0ca20d239a 100644
--- a/transcode.c
+++ b/transcode.c
@@ -132,7 +132,7 @@ struct rb_econv_t {
* Dispatch data and logic
*/
-#define SUPPLEMENTAL_CONVERSION(sname, dname) (*(sname) == '\0' || *(dname) == '\0')
+#define SUPPLEMENTAL_CONVERSION(sname, dname) (*(sname) == '\0')
typedef struct {
const char *sname;
@@ -1762,8 +1762,6 @@ rb_econv_decorate_at(rb_econv_t *ec, const char *decorator_name, int n)
entry = get_transcoder_entry("", decorator_name);
if (!entry)
- entry = get_transcoder_entry(decorator_name, "");
- if (!entry)
return -1;
tr = load_transcoder_entry(entry);
@@ -1833,7 +1831,7 @@ rb_econv_binmode(rb_econv_t *ec)
n = 0;
if (ec->flags & ECONV_UNIVERSAL_NEWLINE_DECORATOR) {
- entry = get_transcoder_entry("universal_newline", "");
+ entry = get_transcoder_entry("", "universal_newline");
if (entry->transcoder)
trs[n++] = entry->transcoder;
}