From 2ba95758ebd0f9e662fbc50bed9a8dee37ef4933 Mon Sep 17 00:00:00 2001 From: Max Kostikov Date: Fri, 5 Oct 2018 11:16:29 +0000 Subject: Prevent links damage on foreign channel repost for cloned (cherry picked from commit d9efb037e3d0c14fa288e8b54c3d55d67689ab54) --- include/text.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/text.php b/include/text.php index f03d0b860..1d884593f 100644 --- a/include/text.php +++ b/include/text.php @@ -2965,7 +2965,9 @@ function item_url_replace($channel,&$item,$old,$new,$oldnick = '') { json_url_replace('/' . $oldnick . '/' ,'/' . $channel['channel_address'] . '/' ,$item['target']); } - if(string_replace($old,$new,$item['body'])) { + $x = preg_replace("/".preg_quote($old,'/')."\/(search|\w+\/".$channel['channel_address'].")/", $new.'/${1}', $item['body']); + if($x) { + $item['body'] = $x; $item['sig'] = base64url_encode(rsa_sign($item['body'],$channel['channel_prvkey'])); $item['item_verified'] = 1; } -- cgit v1.2.3