diff options
author | Jeremy Evans <code@jeremyevans.net> | 2019-10-18 12:39:49 -0700 |
---|---|---|
committer | Hiroshi SHIBATA <hsbt@ruby-lang.org> | 2019-10-31 16:24:02 +0900 |
commit | ebc884461b0d8c3144c05abeb793e381903de6b2 (patch) | |
tree | 7e8a219823978fcde3e1de5d6e33e34fe975d3a9 | |
parent | 3895e548bd2d75cdf47cd247e84d6071247dd3b3 (diff) |
[ruby/stringio] Remove taint support
Ruby 2.7 deprecates taint and it no longer has an effect.
The lack of taint support should not cause a problem in
previous Ruby versions.
https://github.com/ruby/stringio/commit/60ee9ccd95
-rw-r--r-- | ext/stringio/stringio.c | 4 | ||||
-rw-r--r-- | test/stringio/test_stringio.rb | 11 |
2 files changed, 0 insertions, 15 deletions
diff --git a/ext/stringio/stringio.c b/ext/stringio/stringio.c index d6db112069..4dd5fb416a 100644 --- a/ext/stringio/stringio.c +++ b/ext/stringio/stringio.c @@ -623,7 +623,6 @@ strio_copy(VALUE copy, VALUE orig) strio_free(DATA_PTR(copy)); } DATA_PTR(copy) = ptr; - OBJ_INFECT(copy, orig); RBASIC(copy)->flags &= ~STRIO_READWRITE; RBASIC(copy)->flags |= RBASIC(orig)->flags & STRIO_READWRITE; ++ptr->count; @@ -1443,7 +1442,6 @@ strio_write(VALUE self, VALUE str) if (ptr->pos == olen) { if (enc == ascii8bit || enc2 == ascii8bit) { rb_enc_str_buf_cat(ptr->string, RSTRING_PTR(str), len, enc); - OBJ_INFECT(ptr->string, str); } else { rb_str_buf_append(ptr->string, str); @@ -1452,9 +1450,7 @@ strio_write(VALUE self, VALUE str) else { strio_extend(ptr, ptr->pos, len); memmove(RSTRING_PTR(ptr->string)+ptr->pos, RSTRING_PTR(str), len); - OBJ_INFECT(ptr->string, str); } - OBJ_INFECT(ptr->string, self); RB_GC_GUARD(str); ptr->pos += len; return len; diff --git a/test/stringio/test_stringio.rb b/test/stringio/test_stringio.rb index 07fe350b46..663a33be27 100644 --- a/test/stringio/test_stringio.rb +++ b/test/stringio/test_stringio.rb @@ -180,17 +180,6 @@ class TestStringIO < Test::Unit::TestCase f.close unless f.closed? end - def test_write_infection - bug9769 = '[ruby-dev:48118] [Bug #9769]' - s = "".untaint - f = StringIO.new(s, "w") - f.print("bar".taint) - f.close - assert_predicate(s, :tainted?, bug9769) - ensure - f.close unless f.closed? - end - def test_write_encoding s = "".force_encoding(Encoding::UTF_8) f = StringIO.new(s) |