[#46908] [ruby-trunk - Bug #7774][Assigned] IFUNC上のbinding呼び出しでSEGV — "ktsj (Kazuki Tsujimoto)" <kazuki@...>

16 messages 2013/02/03

[#47075] [ruby-trunk - Bug #7924][Open] r39232 以降 net/http で正しく reponse を取得出来ないケースがある — "hsbt (Hiroshi SHIBATA)" <shibata.hiroshi@...>

15 messages 2013/02/23

[ruby-dev:47121] [ruby-trunk - Bug #7881] Windows でパスに日本語を含むスクリプトからの require が失敗する

From: "h.shirosaki (Hiroshi Shirosaki)" <h.shirosaki@...>
Date: 2013-02-27 10:03:10 UTC
List: ruby-dev #47121
Issue #7881 has been updated by h.shirosaki (Hiroshi Shirosaki).


=begin
Windowsのexpand_pathのencodingのバグのようです。

osxだとcurrent directoryのpathに日本語を含むかどうかでencodingがかわるので、Windowsもそのように修正したいと思います。

 $ cat test_expand_path.rb
 # coding: sjis
 p File.expand_path("./a")
 p File.expand_path("./a").encoding
 $ ruby -v test_expand_path.rb
 ruby 2.1.0dev (2013-02-27 trunk 39526) [x86_64-darwin12.2.0]
 "/Users/hiroshi/work/a"
 #<Encoding:Windows-31J>
 $ cd あああ
 $ ruby -v ../test_expand_path.rb
 ruby 2.1.0dev (2013-02-27 trunk 39526) [x86_64-darwin12.2.0]
 "/Users/hiroshi/work/あああ/a"
 #<Encoding:UTF-8>
=end

----------------------------------------
Bug #7881: Windows でパスに日本語を含むスクリプトからの require が失敗する
https://bugs.ruby-lang.org/issues/7881#change-37143

Author: 5.5 (5 5)
Status: Assigned
Priority: Normal
Assignee: h.shirosaki (Hiroshi Shirosaki)
Category: core
Target version: next minor
ruby -v: ruby 1.9.3p385 (2013-02-06) [i386-mingw32]


=begin
Windows でパスに日本語を含むスクリプトからの require が失敗します。

Ruby 1.9.3 の p374,p385 でこの現象が起こりますが,p125 では起こりません。
p286 あたりから起こるようになったと思います。

【再現手順】
(1) d:/テスト というフォルダーを作る。
(2) d:/テスト/a.rb を下記のように書く。
(3) d:/テスト/b.rb を下記のように書く。
(4) cd /テスト
(5) ruby a.rb

a.rb の内容:
 
 # encoding: utf-8
 require "./b"

b.rb の内容

 # encoding: utf-8
 puts "No problem."
    
これで,

cannot load such file -- ./b (LoadError)

が出ます。

* フォルダー名を「テスト」から「test」に変えると正常に動作します。
* a.rb のスクリプトエンコーディングを CP932 に変えると正常に動作します。
* require "./b" を require "./b".encode("CP932") に変えると正常に動作します。
* 標準添付ライブラリーや gem はふつうに require できます。



=end



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

In This Thread

Prev Next