diff --git a/ChangeLog b/ChangeLog index 9bfb03f869..2793621ad9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Wed Aug 5 14:37:55 2015 Nobuyoshi Nakada + + * transcode.c (rb_econv_open0): rb_econv_t::source_encoding_name + and rb_econv_t::destination_encoding_name should refer static + strings always or NULL. [ruby-core:70247] [Bug #11416] + Tue Aug 4 16:53:43 2015 Aaron Patterson * ext/openssl/lib/openssl/ssl.rb (module OpenSSL): extract callback diff --git a/transcode.c b/transcode.c index 5e20fd73a4..25527e1b9f 100644 --- a/transcode.c +++ b/transcode.c @@ -993,6 +993,7 @@ rb_econv_open0(const char *sname, const char *dname, int ecflags) if (*sname == '\0' && *dname == '\0') { num_trans = 0; entries = NULL; + sname = dname = ""; } else { struct trans_open_t toarg; @@ -3246,10 +3247,10 @@ rb_econv_init_by_convpath(VALUE self, VALUE convpath, } if (first) { - *senc_p = NULL; - *denc_p = NULL; - *sname_p = ""; - *dname_p = ""; + *senc_p = NULL; + *denc_p = NULL; + *sname_p = ""; + *dname_p = ""; } ec->source_encoding_name = *sname_p;