From: "h.shirosaki (Hiroshi Shirosaki)" Date: 2012-11-17T10:05:17+09:00 Subject: [ruby-core:49469] [ruby-trunk - Bug #7374][Assigned] File.expand_path resolving to first file/dir instead of absolute path Issue #7374 has been updated by h.shirosaki (Hiroshi Shirosaki). Status changed from Closed to Assigned It seems if the last part of the path contains * or ?, FindFirstFileW should not be used since FindFirstFileW expands wildcard. Examples: File.expand_path("foo/ab*c") File.expand_path("foo/ab?c") Code in file.c uses strpbrk(s, "*?") for that. https://github.com/ruby/ruby/blob/trunk/file.c#L3141 ---------------------------------------- Bug #7374: File.expand_path resolving to first file/dir instead of absolute path https://bugs.ruby-lang.org/issues/7374#change-33000 Author: mdube@arcane-technologies.com (Martin Dub��) Status: Assigned Priority: High Assignee: luislavena (Luis Lavena) Category: core Target version: 2.0.0 ruby -v: ruby 1.9.3p327 (2012-11-10) [i386-mingw32] =begin (({File.expand_path("./*", "c:)"})) will give "c:/$recycle.bin" as result instead of "c:/*" (({File.expand_path("./*", "c:/temp)"})) will give "c:/temp/." as result instead of "c:/temp/*" It looks like the first directory entry is returned instead of the absolute path. =end -- http://bugs.ruby-lang.org/