Depot#files now returns an empty array for empty depots
authorLunar <lunar@anargeek.net>
Tue, 28 Feb 2012 11:21:31 +0000 (12:21 +0100)
committerLunar <lunar@anargeek.net>
Fri, 23 Mar 2012 17:11:28 +0000 (18:11 +0100)
In a brand new depot, there will not be any `.links` file. Instead of raising
an error, let's return an empty array instead, better reflecting the current
state of the depot.

lib/coquelicot/depot.rb

index eda3b6a..68634be 100644 (file)
@@ -127,8 +127,12 @@ module Coquelicot
 
     def files
       lockfile.lock do
-        File.open(links_path) do |f|
-          f.readlines.collect { |l| l.split[1] }
+        begin
+          File.open(links_path) do |f|
+            f.readlines.collect { |l| l.split[1] }
+          end
+        rescue Errno::ENOENT # if links file has not been created yet
+          []
         end
       end
     end