[ruby-trunk - Bug #7911][Open] 特定の条件の時に、File.fnmatchに渡すpatternがUS-ASCII、pathがUTF-8だとInvalid sequence

Issue #7911 has been reported by grafi (Shunsuke Shimizu).


Bug #7911: 特定の条件の時に、File.fnmatchに渡すpatternがUS-ASCII、pathがUTF-8だとInvalid
sequenceでエラーが出る
https://bugs.ruby-lang.org/issues/7911

Author: grafi (Shunsuke Shimizu)
Status: Open
Priority: Normal
Assignee:
Category:
Target version:
ruby -v: ruby 2.0.0dev (2013-02-22 trunk 39383) [x86_64-darwin12.2.1]

=begin

coding: utf-8

File.fnmatch(‘a’.encode(‘US-ASCII’), ‘あ’, File::FNM_CASEFOLD)

というコードを実行した際に、

test-fnmatch.rb:2:in fnmatch': invalid byte sequence in US-ASCII (ArgumentError) from test-fnmatch.rb:2:in

というエラーが発生します。UTF-8文字列である’あ’を、'a’と同じUS-ASCIIだとしてcase
insenstiveなマッチのためにupcaseを試みているのがエラー原因と思われます。

添付のパッチで動作するようになることを確認しました。
=end

Issue #7911 has been updated by ko1 (Koichi Sasada).

Category set to M17N
Assignee set to naruse (Yui NARUSE)
Target version set to 2.1.0

naruse さんに 2.1.0 として振りますが、2.0.0 に必要かどうかはご判断下さい。

Bug #7911: 特定の条件の時に、File.fnmatchに渡すpatternがUS-ASCII、pathがUTF-8だとInvalid
sequenceでエラーが出る
https://bugs.ruby-lang.org/issues/7911#change-36801

Author: grafi (Shunsuke Shimizu)
Status: Open
Priority: Normal
Assignee: naruse (Yui NARUSE)
Category: M17N
Target version: 2.1.0
ruby -v: ruby 2.0.0dev (2013-02-22 trunk 39383) [x86_64-darwin12.2.1]

=begin

coding: utf-8

File.fnmatch(‘a’.encode(‘US-ASCII’), ‘あ’, File::FNM_CASEFOLD)

というコードを実行した際に、

test-fnmatch.rb:2:in fnmatch': invalid byte sequence in US-ASCII (ArgumentError) from test-fnmatch.rb:2:in

というエラーが発生します。UTF-8文字列である’あ’を、'a’と同じUS-ASCIIだとしてcase
insenstiveなマッチのためにupcaseを試みているのがエラー原因と思われます。

添付のパッチで動作するようになることを確認しました。
=end

Issue #7911 has been updated by nagachika (Tomoyuki C.).

Assignee changed from mame (Yusuke E.) to nagachika (Tomoyuki
Chikanaga)


Backport #7911:
特定の条件の時に、File.fnmatchに渡すpatternがUS-ASCII、pathがUTF-8だとInvalid
sequenceでエラーが出る
https://bugs.ruby-lang.org/issues/7911#change-37428

Author: grafi (Shunsuke Shimizu)
Status: Assigned
Priority: Normal
Assignee: nagachika (Tomoyuki C.)
Category:
Target version:

=begin

coding: utf-8

File.fnmatch(‘a’.encode(‘US-ASCII’), ‘あ’, File::FNM_CASEFOLD)

というコードを実行した際に、

test-fnmatch.rb:2:in fnmatch': invalid byte sequence in US-ASCII (ArgumentError) from test-fnmatch.rb:2:in

というエラーが発生します。UTF-8文字列である’あ’を、'a’と同じUS-ASCIIだとしてcase
insenstiveなマッチのためにupcaseを試みているのがエラー原因と思われます。

添付のパッチで動作するようになることを確認しました。
=end

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs