diff options
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | ext/pathname/lib/pathname.rb | 1 | ||||
-rw-r--r-- | test/pathname/test_pathname.rb | 2 |
3 files changed, 11 insertions, 0 deletions
@@ -1,3 +1,11 @@ +Wed Apr 2 11:46:29 2014 Kazuhiro NISHIYAMA <[email protected]> + + * ext/pathname/lib/pathname.rb (Pathname#join): Fix error with + empty args. Reported by ko1 via IRC. + + * test/pathname/test_pathname.rb (TestPathname#test_join): Add the + test for above case. + Tue Apr 1 11:39:57 2014 James Edward Gray II <[email protected]> * lib/csv.rb: Symbol HeaderConverter: strip leading/trailing space. diff --git a/ext/pathname/lib/pathname.rb b/ext/pathname/lib/pathname.rb index bbcb5e4e2a..aa9464799d 100644 --- a/ext/pathname/lib/pathname.rb +++ b/ext/pathname/lib/pathname.rb @@ -384,6 +384,7 @@ class Pathname # #=> true # def join(*args) + return self if args.empty? result = args.pop result = Pathname.new(result) unless Pathname === result return result if result.absolute? diff --git a/test/pathname/test_pathname.rb b/test/pathname/test_pathname.rb index 94bd8d8872..4e88db754d 100644 --- a/test/pathname/test_pathname.rb +++ b/test/pathname/test_pathname.rb @@ -242,6 +242,8 @@ class TestPathname < Test::Unit::TestCase assert_equal(Pathname("/c"), r) r = Pathname("/a").join("/b", "/c") assert_equal(Pathname("/c"), r) + r = Pathname("/foo/var").join() + assert_equal(Pathname("/foo/var"), r) end def test_absolute |