Browse Source

Less greedy when replacing attachment elements

pull/10181/head
Michael 6 months ago
parent
commit
8541e248bb
  1. 2
      src/Content/Text/BBCode.php
  2. 4
      src/Model/Item.php

2
src/Content/Text/BBCode.php

@ -408,7 +408,7 @@ class BBCode
*/
public static function removeAttachment($body, $no_link_desc = false)
{
return preg_replace_callback("/\s*\[attachment (.*)\](.*?)\[\/attachment\]\s*/ism",
return preg_replace_callback("/\s*\[attachment (.*?)\](.*?)\[\/attachment\]\s*/ism",
function ($match) use ($no_link_desc) {
$attach_data = self::getAttachmentData($match[0]);
if (empty($attach_data['url'])) {

4
src/Model/Item.php

@ -1706,7 +1706,7 @@ class Item
return ("[bookmark=" . str_replace("#", "#", $match[1]) . "]" . str_replace("#", "#", $match[2]) . "[/bookmark]");
}, $body);
$body = preg_replace_callback("/\[attachment (.*)\](.*?)\[\/attachment\]/ism",
$body = preg_replace_callback("/\[attachment (.*?)\](.*?)\[\/attachment\]/ism",
function ($match) {
return ("[attachment " . str_replace("#", "#", $match[1]) . "]" . $match[2] . "[/attachment]");
}, $body);
@ -2640,7 +2640,7 @@ class Item
}
$orig_body = $item['body'];
$item['body'] = preg_replace("/\s*\[attachment .*\].*?\[\/attachment\]\s*/ism", '', $item['body']);
$item['body'] = preg_replace("/\s*\[attachment .*?\].*?\[\/attachment\]\s*/ism", '', $item['body']);
self::putInCache($item);
$item['body'] = $orig_body;
$s = $item["rendered-html"];

Loading…
Cancel
Save