diff --git a/src/Content/Text/HTML.php b/src/Content/Text/HTML.php
index 276094a8f..adfc60eae 100644
--- a/src/Content/Text/HTML.php
+++ b/src/Content/Text/HTML.php
@@ -180,7 +180,9 @@ class HTML
$xpath = new DomXPath($doc);
$list = $xpath->query("//pre");
foreach ($list as $node) {
- $node->nodeValue = str_replace("\n", "\r", $node->nodeValue);
+ // Ensure to escape unescaped & - they will otherwise raise a warning
+ $safe_value = preg_replace('/&(?!\w+;)/', '&', $node->nodeValue);
+ $node->nodeValue = str_replace("\n", "\r", $safe_value);
}
$message = $doc->saveHTML();
diff --git a/src/Protocol/ActivityPub/Processor.php b/src/Protocol/ActivityPub/Processor.php
index d2f5b3b2d..1a631496b 100644
--- a/src/Protocol/ActivityPub/Processor.php
+++ b/src/Protocol/ActivityPub/Processor.php
@@ -329,6 +329,11 @@ class Processor
return;
}
+ if (empty($object['id'])) {
+ Logger::log('Activity ' . $url . ' has got not id, aborting. ' . json_encode($object));
+ return;
+ }
+
$activity = [];
$activity['@context'] = $object['@context'];
unset($object['@context']);