Make blank target imply noopener

This commit is contained in:
George Roman 2019-02-08 13:04:20 +02:00
parent c80c3f3167
commit 74d6af94f6

View file

@ -609,7 +609,14 @@ pub fn follow_hyperlink(subject: &Element, hyperlink_suffix: Option<String>) {
let values = link_types.Value();
let contains_noopener = values.contains("noopener");
let contains_noreferrer = values.contains("noreferrer");
contains_noreferrer || contains_noopener
let contains_opener = values.contains("opener");
let target_is_blank = if let Some(name) = target_attribute_value.as_ref() {
name.Value().to_lowercase() == "_blank"
} else {
false
};
contains_noreferrer || contains_noopener || (!contains_opener && target_is_blank)
} else {
false
};