mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* transcode.c (rb_econv_binmode): newline decorators are
exclusive. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33193 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
179cf473c2
commit
bc17dba00f
2 changed files with 18 additions and 11 deletions
|
@ -1,3 +1,8 @@
|
|||
Mon Sep 5 18:10:56 2011 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||
|
||||
* transcode.c (rb_econv_binmode): newline decorators are
|
||||
exclusive.
|
||||
|
||||
Mon Sep 5 15:03:37 2011 NARUSE, Yui <naruse@ruby-lang.org>
|
||||
|
||||
* test/rubygems/test_gem_security.rb
|
||||
|
|
24
transcode.c
24
transcode.c
|
@ -1935,20 +1935,22 @@ rb_econv_binmode(rb_econv_t *ec)
|
|||
int n, i, j;
|
||||
transcoder_entry_t *entry;
|
||||
int num_trans;
|
||||
const char *dname = 0;
|
||||
|
||||
n = 0;
|
||||
if (ec->flags & ECONV_UNIVERSAL_NEWLINE_DECORATOR) {
|
||||
entry = get_transcoder_entry("", "universal_newline");
|
||||
if (entry->transcoder)
|
||||
trs[n++] = entry->transcoder;
|
||||
switch (ec->flags & ECONV_NEWLINE_DECORATOR_MASK) {
|
||||
case ECONV_UNIVERSAL_NEWLINE_DECORATOR:
|
||||
dname = "universal_newline";
|
||||
break;
|
||||
case ECONV_CRLF_NEWLINE_DECORATOR:
|
||||
dname = "crlf_newline";
|
||||
break;
|
||||
case ECONV_CR_NEWLINE_DECORATOR:
|
||||
dname = "cr_newline";
|
||||
break;
|
||||
}
|
||||
if (ec->flags & ECONV_CRLF_NEWLINE_DECORATOR) {
|
||||
entry = get_transcoder_entry("", "crlf_newline");
|
||||
if (entry->transcoder)
|
||||
trs[n++] = entry->transcoder;
|
||||
}
|
||||
if (ec->flags & ECONV_CR_NEWLINE_DECORATOR) {
|
||||
entry = get_transcoder_entry("", "cr_newline");
|
||||
if (dname) {
|
||||
entry = get_transcoder_entry("", dname);
|
||||
if (entry->transcoder)
|
||||
trs[n++] = entry->transcoder;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue