From a1561a4d3a07013f44b54a16d03aa849fdf7e7c5 Mon Sep 17 00:00:00 2001 From: epriestley Date: Mon, 15 Jun 2015 13:52:00 -0700 Subject: [PATCH] Fix a fatal in Diviner when atoms extend ghosts Summary: Fixes T8547. I wasn't immediately able to reproduce this locally (although I didn't try too hard), but I think the issue is that when atoms extend ghosts (probably they are usually ghosts themselves?), we try to check the ghost language and fatal. Instead, don't match ghosts when figuring out what an atom extends. This could maybe be a little cleaner (match the ghosts, at lower priority, and show that they're ghosts?) but I'm not sure there's a real product use case for it, and this looks like a safer way to stop the bleeding for now. Test Plan: Poked around Diviner locally. Reviewers: joshuaspence Reviewed By: joshuaspence Subscribers: epriestley Maniphest Tasks: T8547 Differential Revision: https://secure.phabricator.com/D13300 --- src/applications/diviner/query/DivinerAtomQuery.php | 1 + 1 file changed, 1 insertion(+) diff --git a/src/applications/diviner/query/DivinerAtomQuery.php b/src/applications/diviner/query/DivinerAtomQuery.php index e01df2022d..2daa9bc3a7 100644 --- a/src/applications/diviner/query/DivinerAtomQuery.php +++ b/src/applications/diviner/query/DivinerAtomQuery.php @@ -179,6 +179,7 @@ final class DivinerAtomQuery extends PhabricatorCursorPagedPolicyAwareQuery { $xatoms = id(new DivinerAtomQuery()) ->setViewer($this->getViewer()) ->withNames($names) + ->withGhosts(false) ->needExtends(true) ->needAtoms(true) ->needChildren($this->needChildren)