From: ThoML Date: 2008-07-07T00:26:39+09:00 Subject: File.extname("foo bar") = " bar" .................? Hi, I just realized that the result of File.extname("foo bar") is => " bar" I have to admit this comes unexpected. In file.c, I found this #if USE_NTFS #define istrailinggabage(x) ((x) == '.' || (x) == ' ') #else #define istrailinggabage(x) 0 #endif and #if defined _WIN32 || defined __CYGWIN__ #define USE_NTFS 1 #else #define USE_NTFS 0 #endif Is this intentional? Could somebody please explain. This is on ruby 1.8.7 (2008-06-20 patchlevel 22) [i386-cygwin] and ruby 1.9.0 (2008-06-20 revision 17482) [i386-cygwin] With ruby 1.8.6 (2007-03-13 patchlevel 0) [i386-mswin32] the result is closer to what I'd expect: $ /cygdrive/c/ruby/bin/ruby -e "p File.extname('foo bar')" "" Thanks, Thomas.