diff --git a/src/html.rs b/src/html.rs
index beb72e7c..91a488d8 100644
--- a/src/html.rs
+++ b/src/html.rs
@@ -1022,11 +1022,7 @@ pub fn walk(session: &mut Session, document_url: &Url, node: &Handle) {
set_node_attr(node, attr_name, None);
} else if use_attr_href_value.clone().starts_with('#') {
// Relative symbol that resolves to its own URL; keep as-is.
- set_node_attr(
- node,
- attr_name,
- Some(use_attr_href_value),
- );
+ set_node_attr(node, attr_name, Some(use_attr_href_value));
} else {
let image_asset_url: Url =
resolve_url(document_url, &use_attr_href_value);
diff --git a/src/session.rs b/src/session.rs
index 266a5fc1..31c0d863 100644
--- a/src/session.rs
+++ b/src/session.rs
@@ -145,13 +145,18 @@ impl Session {
// URL not in cache, we retrieve the file
let mut headers = HeaderMap::new();
if self.cookies.is_some() && !self.cookies.as_ref().unwrap().is_empty() {
+ let mut cookie_values: Vec = Vec::new();
for cookie in self.cookies.as_ref().unwrap() {
if !cookie.is_expired() && cookie.matches_url(url.as_str()) {
- let cookie_header_value: String = cookie.name.clone() + "=" + &cookie.value;
- headers
- .insert(COOKIE, HeaderValue::from_str(&cookie_header_value).unwrap());
+ cookie_values.push(cookie.name.clone() + "=" + &cookie.value);
}
}
+ if !cookie_values.is_empty() {
+ headers.insert(
+ COOKIE,
+ HeaderValue::from_str(&cookie_values.join("; ")).unwrap(),
+ );
+ }
}
// Add referer header for page resource requests
if ["https", "http"].contains(&parent_url.scheme()) && parent_url != url {