Project

General

Profile

Actions

Bug #16625

closed

Wrong File.basename return on UNC paths

Bug #16625: Wrong File.basename return on UNC paths

Added by LeonardoDNA (Leonardo Prado) over 5 years ago. Updated over 5 years ago.

Status:
Rejected
Assignee:
-
Target version:
-
ruby -v:
ruby 2.7.0p0 (2019-12-25 revision 647ee6f091) [x64-mingw32]
[ruby-core:97119]

Description

I've got some strange behavior while working with UNC paths on windows:

irb(main):001:0> File.basename('C:/foo/bar/baz.ext')
irb(main):002:0> File.basename('//server/foo/bar/baz.ext')
=> "baz.ext"
Correct

irb(main):003:0> File.basename('C:/foo/bar/')
irb(main):004:0> File.basename('//server/foo/bar/')
=> "bar"
Correct

irb(main):005:0> File.basename('C:/')
irb(main):006:0> File.basename('//server/')
=> "/"
Correct

irb(main):007:0> File.basename('C:/foo/')
=> "foo"
irb(main):008:0> File.basename('//server/foo/')
=> "/"
Wrong

Here on line 8 the method returns "/", when the correct value should be "foo".

Actions

Also available in: PDF Atom