---
client/lib/deltacloud.rb | 16 ++++++++++++----
1 files changed, 12 insertions(+), 4 deletions(-)
diff --git a/client/lib/deltacloud.rb b/client/lib/deltacloud.rb
index 62303ba..de2b327 100644
--- a/client/lib/deltacloud.rb
+++ b/client/lib/deltacloud.rb
@@ -294,12 +294,20 @@ module DeltaCloud
end
logger << "[#{conf[:method].to_s.upcase}] #{conf[:path]}\n"
if conf[:method].eql?(:post)
- RestClient.send(:post, conf[:path], conf[:form_data], default_headers)
do |response|
- yield response.body if block_given?
+ RestClient.send(:post, conf[:path], conf[:form_data], default_headers)
do |response, request, &block|
+ if response.respond_to?('body')
+ yield response.body if block_given?
+ else
+ yield response.to_s if block_given?
+ end
end
else
- RestClient.send(conf[:method], conf[:path], default_headers) do
|response|
- yield response.body if block_given?
+ RestClient.send(conf[:method], conf[:path], default_headers) do
|response, request, &block|
+ if response.respond_to?('body')
+ yield response.body if block_given?
+ else
+ yield response.to_s if block_given?
+ end
end
end
end
--
1.7.1.1