diff --git a/src/applications/meta/engineextension/PhabricatorSelfHyperlinkEngineExtension.php b/src/applications/meta/engineextension/PhabricatorSelfHyperlinkEngineExtension.php --- a/src/applications/meta/engineextension/PhabricatorSelfHyperlinkEngineExtension.php +++ b/src/applications/meta/engineextension/PhabricatorSelfHyperlinkEngineExtension.php @@ -53,11 +53,13 @@ } if ($object_map) { - $handles = $viewer->loadHandles(mpull($object_map, 'getPHID')); + $object_phids = mpull($object_map, 'getPHID'); } else { - $handles = array(); + $object_phids = array(); } + $handles = $viewer->loadHandles($object_phids); + foreach ($object_names as $key => $object_name) { $object = idx($object_map, $object_name); if (!$object) { @@ -83,6 +85,13 @@ unset($self_links[$key]); } + + $key_mentioned = PhabricatorObjectRemarkupRule::KEY_MENTIONED_OBJECTS; + $mentioned_phids = $engine->getTextMetadata($key_mentioned, array()); + foreach ($object_phids as $object_phid) { + $mentioned_phids[$object_phid] = $object_phid; + } + $engine->setTextMetadata($key_mentioned, $mentioned_phids); } }