Issue #15937 has been updated by usa (Usaku NAKAMURA).

Backport changed from 2.4: REQUIRED, 2.5: REQUIRED, 2.6: DONE to 2.4: REQUIRED, 2.5: DONE, 2.6: DONE

ruby_2_5 r67769 merged revision(s) 28678997e40869f5591eae60edd9757334426ffb,8797f48373dcfa3ff8e748667732dea8aea4347e.

----------------------------------------
Bug #15937: Segmentation fault when String#initialize given same string with capacity field
https://bugs.ruby-lang.org/issues/15937#change-81036

* Author: luke-gru (Luke Gruber)
* Status: Closed
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: 
* Backport: 2.4: REQUIRED, 2.5: DONE, 2.6: DONE
----------------------------------------
Reproduction steps:

string buffer corruption:
```ruby
s = "mystring"
s.__send__(:initialize, s, capacity: 1000)
puts s
```

segfault:

```ruby
s = "mystring that can't be embedded because it's too long and therefore must be allocated"
s.__send__(:initialize, s, capacity: 1000)
```

Thanks for your time :)



-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:ruby-core-request / ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>