From 283050fc283868f79796f05901bd9149713ae282 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Sat, 5 Nov 2011 02:34:35 +0000 Subject: redo IO.copy_stream usage Avoid deepening stack depth and make it easier to migrate fully to 1.9 in the future (dropping 1.8 support). --- lib/mogilefs/http_file.rb | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) (limited to 'lib/mogilefs/http_file.rb') diff --git a/lib/mogilefs/http_file.rb b/lib/mogilefs/http_file.rb index 22692e7..261e209 100644 --- a/lib/mogilefs/http_file.rb +++ b/lib/mogilefs/http_file.rb @@ -3,7 +3,6 @@ require 'stringio' require 'uri' require 'mogilefs/backend' -require 'mogilefs/util' ## # HTTPFile wraps up the new file operations for storing files onto an HTTP @@ -13,8 +12,6 @@ require 'mogilefs/util' # create a new file using MogileFS::MogileFS.new_file. # class MogileFS::HTTPFile < StringIO - include MogileFS::Util - class EmptyResponseError < MogileFS::Error; end class BadResponseError < MogileFS::Error; end class UnparseableResponseError < MogileFS::Error; end @@ -63,11 +60,11 @@ class MogileFS::HTTPFile < StringIO end) elsif @big_io # Don't try to run out of memory - File.open(@big_io, "rb") do |fp| + File.open(@big_io) do |fp| file_size = fp.stat.size sock.write("PUT #{uri.request_uri} HTTP/1.0\r\n" \ "Content-Length: #{file_size}\r\n\r\n") - copy_stream(fp, sock) + MogileFS::X.copy_stream(fp, sock) end else sock.write("PUT #{uri.request_uri} HTTP/1.0\r\n" \ -- cgit v1.2.3-24-ge0c7