diff --git a/lib/gollum/blob_entry.rb b/lib/gollum/blob_entry.rb index 9f30d4c3..535f16c7 100644 --- a/lib/gollum/blob_entry.rb +++ b/lib/gollum/blob_entry.rb @@ -32,7 +32,7 @@ module Gollum # # Returns an unbaked Grit::Blob instance. def blob(repo) - @blob ||= Grit::Blob.create(repo, + @blob ||= Grit::Blob.create(repo, :id => @sha, :name => name, :size => @size) end @@ -53,7 +53,7 @@ module Gollum end # Normalizes a given directory name for searching through tree paths. - # Ensures that a directory begins with a slash, or + # Ensures that a directory begins with a slash, or # # normalize_dir("") # => "" # normalize_dir(".") # => "" @@ -64,12 +64,13 @@ module Gollum # # dir - String directory name. # - # Returns a normalized String directory name, or nil if no directory + # Returns a normalized String directory name, or nil if no directory # is given. def self.normalize_dir(dir) + return '' if dir =~ /^.:\/$/ if dir dir = ::File.expand_path(dir, '/') - dir = '' if (dir == '/' || dir =~ /^.:\/$/) + dir = '' if dir == '/' end dir end diff --git a/test/test_page.rb b/test/test_page.rb index 1d9bdbbc..0a2631b3 100644 --- a/test/test_page.rb +++ b/test/test_page.rb @@ -139,6 +139,7 @@ context "Page" do assert_equal "", Gollum::BlobEntry.normalize_dir("") assert_equal "", Gollum::BlobEntry.normalize_dir(".") assert_equal "", Gollum::BlobEntry.normalize_dir("/") + assert_equal "", Gollum::BlobEntry.normalize_dir("c:/") assert_equal "/foo", Gollum::BlobEntry.normalize_dir("foo") assert_equal "/foo", Gollum::BlobEntry.normalize_dir("/foo") end