mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
[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
This commit is contained in:
parent
3895e548bd
commit
ebc884461b
2 changed files with 0 additions and 15 deletions
|
@ -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;
|
||||
|
|
|
@ -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)
|
||||
|
|
Loading…
Reference in a new issue