[ruby-dev:49499] [Ruby trunk Bug#12087] Find.find に存在しないパスを渡した時のエラーにパス名がない

From: usa@...
Date: 2016-02-23 09:01:06 UTC
List: ruby-dev #49499
Issue #12087 has been updated by Usaku NAKAMURA.

Backport changed from 2.0.0: UNKNOWN, 2.1: UNKNOWN, 2.2: UNKNOWN, 2.3: UNKN=
OWN to 2.1: WONTFIX, 2.2: UNKNOWN, 2.3: UNKNOWN

----------------------------------------
Bug #12087: Find.find =E3=81=AB=E5=AD=98=E5=9C=A8=E3=81=97=E3=81=AA=E3=81=
=84=E3=83=91=E3=82=B9=E3=82=92=E6=B8=A1=E3=81=97=E3=81=9F=E6=99=82=E3=81=AE=
=E3=82=A8=E3=83=A9=E3=83=BC=E3=81=AB=E3=83=91=E3=82=B9=E5=90=8D=E3=81=8C=E3=
=81=AA=E3=81=84
https://bugs.ruby-lang.org/issues/12087#change-57097

* Author: Masahiro Tomita
* Status: Closed
* Priority: Normal
* Assignee:=20
* ruby -v: ruby 2.3.0p0 (2015-12-25 revision 53290) [x86_64-linux]
* Backport: 2.1: WONTFIX, 2.2: UNKNOWN, 2.3: UNKNOWN
----------------------------------------
`ruby -rfind -e 'Find.find("/hoge"){}'` =E3=81=A7 /hoge =E3=81=8C=E5=AD=98=
=E5=9C=A8=E3=81=97=E3=81=AA=E3=81=84=E5=A0=B4=E5=90=88=E3=81=AB=E7=99=BA=E7=
=94=9F=E3=81=99=E3=82=8B=E3=82=A8=E3=83=A9=E3=83=BC=E3=81=8C `No such file =
or directory (Errno::ENOENT)` =E3=81=A7=E3=83=91=E3=82=B9=E5=90=8D=E3=81=8C=
=E5=90=AB=E3=81=BE=E3=82=8C=E3=81=A6=E3=81=BE=E3=81=9B=E3=82=93=E3=80=82

=E3=82=A8=E3=83=A9=E3=83=BC=E3=81=AB=E3=83=91=E3=82=B9=E5=90=8D=E3=82=92=E5=
=90=AB=E3=82=81=E3=81=A6=E6=AC=B2=E3=81=97=E3=81=84=E3=81=A7=E3=81=99=E3=80=
=82=E6=AC=A1=E3=81=AE=E4=BF=AE=E6=AD=A3=E3=81=A7 `No such file or directory=
 - /hoge (Errno::ENOENT)` =E3=81=A8=E3=81=AA=E3=82=8A=E3=81=BE=E3=81=99=E3=
=80=82

```diff
diff --git a/lib/find.rb b/lib/find.rb
index aa7a3c0..093f855 100644
--- a/lib/find.rb
+++ b/lib/find.rb
@@ -41,5 +41,5 @@ def find(*paths, ignore_error: true) # :yield: path
     fs_encoding =3D Encoding.find("filesystem")
=20
-    paths.collect!{|d| raise Errno::ENOENT unless File.exist?(d); d.dup}.e=
ach do |path|
+    paths.collect!{|d| raise Errno::ENOENT, d unless File.exist?(d); d.dup=
}.each do |path|
       path =3D path.to_path if path.respond_to? :to_path
       enc =3D path.encoding =3D=3D Encoding::US_ASCII ? fs_encoding : path=
.encoding
```



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

In This Thread

Prev Next