only upload media if there is one
[arvados.git] / lib / google / api_client / request.rb
index 2004f80dfeca5278944169a24608e27c48c1e6f1..78ec87793368db05b3e81bed2588f9f44d6292eb 100644 (file)
@@ -168,7 +168,7 @@ module Google
 
         # Resumamble slightly different than other upload protocols in that it requires at least
         # 2 requests.
-        if result.status == 200 && self.upload_type == 'resumable'
+        if result.status == 200 && self.upload_type == 'resumable' && self.media
           upload = result.resumable_upload
           unless upload.complete?
             logger.debug { "#{self.class} Sending upload body" }
@@ -287,6 +287,7 @@ module Google
             raise ArgumentError, "Can not specify body & body object for simple uploads"
           end
           self.headers['Content-Type'] ||= self.media.content_type
+          self.headers['Content-Length'] ||= self.media.length.to_s
           self.body = self.media
         when "multipart"
           unless options[:body_object]