[ruby-dev:49191] [Ruby trunk - Bug #11387] String#force_encoding と String#reverse の後にSEGV
From:
nobu@...
Date:
2015-07-22 14:44:21 UTC
List:
ruby-dev #49191
Issue #11387 has been updated by Nobuyoshi Nakada.
Description updated
Backport changed from 2.0.0: UNKNOWN, 2.1: UNKNOWN, 2.2: UNKNOWN to 2.0.0: REQUIRED, 2.1: REQUIRED, 2.2: REQUIRED
----------------------------------------
Bug #11387: String#force_encoding と String#reverse の後にSEGV
https://bugs.ruby-lang.org/issues/11387#change-53505
* Author: Tatsuya Otsuka
* Status: Open
* Priority: Normal
* Assignee:
* ruby -v: ruby 2.3.0dev (2015-07-22 trunk 51342) [x86_64-darwin14]
* Backport: 2.0.0: REQUIRED, 2.1: REQUIRED, 2.2: REQUIRED
----------------------------------------
以下のコードでSEGVします。
```ruby
broken_str = "abcd\xf0"
broken_str.force_encoding("utf-8").reverse
p broken_str.reverse
```
また、以下のコードでは `String#split` で `ArgumentError (invalid byte sequence in UTF-8)` が
発生することが期待されますが、実際は例外が発生しません。
```ruby
broken_str = "abcd\xf0"
broken_str.force_encoding("utf-8").reverse
"".split(broken_str)
```
---Files--------------------------------
stdout-and-stderr.txt (3.97 KB)
--
https://bugs.ruby-lang.org/