diff options
Diffstat (limited to 'lib/mogilefs/mogilefs.rb')
-rw-r--r-- | lib/mogilefs/mogilefs.rb | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/lib/mogilefs/mogilefs.rb b/lib/mogilefs/mogilefs.rb index 8679d2e..812fba6 100644 --- a/lib/mogilefs/mogilefs.rb +++ b/lib/mogilefs/mogilefs.rb @@ -8,7 +8,6 @@ require 'mogilefs/http_reader' class MogileFS::MogileFS < MogileFS::Client - include MogileFS::Util include MogileFS::Bigfile ## @@ -137,15 +136,15 @@ class MogileFS::MogileFS < MogileFS::Client raise MogileFS::ReadOnlyError if readonly? new_file key, klass do |mfp| - if file.respond_to?(:read) - copy_stream(file, mfp) + if file.respond_to?(:readpartial) + MogileFS::X.copy_stream(file, mfp) else size = File.size(file) if size > 0x10000 # Bigass file, handle differently mfp.big_io = file size else - File.open(file, "rb") { |fp| copy_stream(fp, mfp) } + MogileFS::X.copy_stream(file, mfp) end end end |