diff options
-rw-r--r-- | lib/mogilefs/mogilefs.rb | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/lib/mogilefs/mogilefs.rb b/lib/mogilefs/mogilefs.rb index 1ec357d..819f69a 100644 --- a/lib/mogilefs/mogilefs.rb +++ b/lib/mogilefs/mogilefs.rb @@ -268,12 +268,10 @@ class MogileFS::MogileFS < MogileFS::Client @backend.respond_to?(:_list_keys) and return @backend._list_keys(domain, prefix, after, limit, &block) - begin - res = @backend.list_keys(:domain => domain, :prefix => prefix, - :after => after, :limit => limit) - rescue MogileFS::Backend::NoneMatchError - return - end + res = @backend.list_keys(:domain => domain, :prefix => prefix, + :after => after, :limit => limit, + :ruby_no_raise => true) + MogileFS::Backend::NoneMatchError === res and return keys = (1..res['key_count'].to_i).map { |i| res["key_#{i}"] } if block |