From b7eba15917322afe47bf76bf9f74469122bc0a37 Mon Sep 17 00:00:00 2001 From: Simounet Date: Tue, 10 Jul 2018 18:33:58 +0200 Subject: [PATCH] Fix srcset handling Regexp added because a comma is a valid URL character. --- htmLawed.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/htmLawed.php b/htmLawed.php index 550bc11..4fdce0f 100755 --- a/htmLawed.php +++ b/htmLawed.php @@ -519,7 +519,10 @@ function hl_tag($t){ $v = str_replace("­", ' ', (strpos($v, '&') !== false ? str_replace(array('­', '­', '­'), ' ', $v) : $v)); # double-quoted char: soft-hyphen; appears here as "­" or hyphen or something else depending on viewing software if($k == 'srcset'){ $v2 = ''; - foreach(explode(',', $v) as $k1=>$v1){ + $pattern = "/(?:[^\"'\s]+\s*(?:\d+[wx])+)/"; + preg_match_all($pattern, $v, $matches); + $matches = call_user_func_array('array_merge', $matches); + foreach($matches as $k1=>$v1){ $v1 = explode(' ', ltrim($v1), 2); $k1 = isset($v1[1]) ? trim($v1[1]) : ''; $v1 = trim($v1[0]);