lib/down.rb in down-2.3.8 vs lib/down.rb in down-2.4.0
- old
+ new
@@ -103,13 +103,15 @@
store.set_default_paths
end
http.cert_store = store
end
+ request_headers = options.select { |key, value| key.is_a?(String) }
+
request = Fiber.new do
http.start do
- http.request_get(uri.request_uri) do |response|
+ http.request_get(uri.request_uri, request_headers) do |response|
Fiber.yield response
response.instance_variable_set("@read", true)
end
end
end
@@ -162,10 +164,12 @@
end
private
def filename_from_content_disposition
- meta["content-disposition"].to_s[/filename="([^"]+)"/, 1]
+ content_disposition = meta["content-disposition"].to_s
+ filename = content_disposition[/filename="([^"]+)"/, 1] || content_disposition[/filename=(.+)/, 1]
+ filename && CGI.unescape(filename.strip)
end
def filename_from_uri
path = base_uri.path
filename = path.split("/").last