Forum: Ruby-dev [ruby-trunk - Bug #6716][Open] FileUtils.mv でリンク先がないシンボリックリンクファイルを指定すると ENOENT エラーになる

Posted by tommy (Masahiro Tomita) (Guest)
on 2012-07-10 12:28
(Received via mailing list)
Issue #6716 has been reported by tommy (Masahiro Tomita).

----------------------------------------
Bug #6716: FileUtils.mv でリンク先がないシンボリックリンクファイルを指定すると ENOENT エラーになる
https://bugs.ruby-lang.org/issues/6716

Author: tommy (Masahiro Tomita)
Status: Open
Priority: Normal
Assignee:
Category:
Target version:
ruby -v: ruby 1.9.3p194 (2012-04-20 revision 35410) [i686-linux]


=begin
FileUtils.mv でリンク先がないシンボリックリンクファイルを指定すると ENOENT になります。

 % ln -s unexist hoge
 % ruby -v -rfileutils -e 'FileUtils.mv("hoge", "fuga")'
 ruby 1.9.3p194 (2012-04-20 revision 35410) [i686-linux]
 /home/tommy/ruby193/lib/ruby/1.9.1/fileutils.rb:1515:in `stat': No such 
file or directory - hoge (Errno::ENOENT)
   from /home/tommy/ruby193/lib/ruby/1.9.1/fileutils.rb:1515:in `block 
in fu_each_src_dest'
   from /home/tommy/ruby193/lib/ruby/1.9.1/fileutils.rb:1531:in 
`fu_each_src_dest0'
   from /home/tommy/ruby193/lib/ruby/1.9.1/fileutils.rb:1513:in 
`fu_each_src_dest'
   from /home/tommy/ruby193/lib/ruby/1.9.1/fileutils.rb:508:in `mv'
   from -e:1:in `<main>'

mv コマンドと同じ動きを目指すのであればエラーにすべきではないと思います。

r27317 から発生していると思います。
=end
Posted by tommy (Masahiro Tomita) (Guest)
on 2012-07-11 15:24
(Received via mailing list)
Issue #6716 has been updated by tommy (Masahiro Tomita).


こんな感じにしてみました。いかがでしょうか。

https://github.com/tmtm/ruby/commit/00a677d8f42a36...
----------------------------------------
Bug #6716: FileUtils.mv でリンク先がないシンボリックリンクファイルを指定すると ENOENT エラーになる
https://bugs.ruby-lang.org/issues/6716#change-27943

Author: tommy (Masahiro Tomita)
Status: Open
Priority: Normal
Assignee:
Category:
Target version:
ruby -v: ruby 1.9.3p194 (2012-04-20 revision 35410) [i686-linux]


=begin
FileUtils.mv でリンク先がないシンボリックリンクファイルを指定すると ENOENT になります。

 % ln -s unexist hoge
 % ruby -v -rfileutils -e 'FileUtils.mv("hoge", "fuga")'
 ruby 1.9.3p194 (2012-04-20 revision 35410) [i686-linux]
 /home/tommy/ruby193/lib/ruby/1.9.1/fileutils.rb:1515:in `stat': No such 
file or directory - hoge (Errno::ENOENT)
   from /home/tommy/ruby193/lib/ruby/1.9.1/fileutils.rb:1515:in `block 
in fu_each_src_dest'
   from /home/tommy/ruby193/lib/ruby/1.9.1/fileutils.rb:1531:in 
`fu_each_src_dest0'
   from /home/tommy/ruby193/lib/ruby/1.9.1/fileutils.rb:1513:in 
`fu_each_src_dest'
   from /home/tommy/ruby193/lib/ruby/1.9.1/fileutils.rb:508:in `mv'
   from -e:1:in `<main>'

mv コマンドと同じ動きを目指すのであればエラーにすべきではないと思います。

r27317 から発生していると思います。
=end
Posted by ko1 (Koichi Sasada) (Guest)
on 2012-07-14 11:26
(Received via mailing list)
Issue #6716 has been updated by ko1 (Koichi Sasada).

Status changed from Open to Assigned
Assignee set to nobu (Nobuyoshi Nakada)


----------------------------------------
Bug #6716: FileUtils.mv でリンク先がないシンボリックリンクファイルを指定すると ENOENT エラーになる
https://bugs.ruby-lang.org/issues/6716#change-28079

Author: tommy (Masahiro Tomita)
Status: Assigned
Priority: Normal
Assignee: nobu (Nobuyoshi Nakada)
Category:
Target version:
ruby -v: ruby 1.9.3p194 (2012-04-20 revision 35410) [i686-linux]


=begin
FileUtils.mv でリンク先がないシンボリックリンクファイルを指定すると ENOENT になります。

 % ln -s unexist hoge
 % ruby -v -rfileutils -e 'FileUtils.mv("hoge", "fuga")'
 ruby 1.9.3p194 (2012-04-20 revision 35410) [i686-linux]
 /home/tommy/ruby193/lib/ruby/1.9.1/fileutils.rb:1515:in `stat': No such 
file or directory - hoge (Errno::ENOENT)
   from /home/tommy/ruby193/lib/ruby/1.9.1/fileutils.rb:1515:in `block 
in fu_each_src_dest'
   from /home/tommy/ruby193/lib/ruby/1.9.1/fileutils.rb:1531:in 
`fu_each_src_dest0'
   from /home/tommy/ruby193/lib/ruby/1.9.1/fileutils.rb:1513:in 
`fu_each_src_dest'
   from /home/tommy/ruby193/lib/ruby/1.9.1/fileutils.rb:508:in `mv'
   from -e:1:in `<main>'

mv コマンドと同じ動きを目指すのであればエラーにすべきではないと思います。

r27317 から発生していると思います。
=end
Please log in before posting. Registration is free and takes only a minute.
Existing account (Switch to SSL-encrypted connection)
NEW: Do you have a Google/GoogleMail or Yahoo account? No registration required!
Log in with Google account | Log in with Yahoo account
No account? Register here.