about summary refs log tree commit homepage
path: root/lib/mogilefs/mogilefs.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/mogilefs/mogilefs.rb')
-rw-r--r--lib/mogilefs/mogilefs.rb9
1 files changed, 8 insertions, 1 deletions
diff --git a/lib/mogilefs/mogilefs.rb b/lib/mogilefs/mogilefs.rb
index ba8de2c..eccca78 100644
--- a/lib/mogilefs/mogilefs.rb
+++ b/lib/mogilefs/mogilefs.rb
@@ -140,7 +140,14 @@ class MogileFS::MogileFS < MogileFS::Client
   # Returns +true+ if +key+ exists, +false+ if not
   def exist?(key)
     args = { :key => key, :domain => @domain , :ruby_no_raise => true}
-    Hash === @backend.get_paths(args)
+    case rv = @backend.get_paths(args)
+    when Hash
+      true
+    when MogileFS::Backend::UnknownKeyError
+      false
+    else
+      raise rv
+    end
   end
 
   # Get the URIs for +key+ (paths) as URI::HTTP objects