1
0
Fork 0
mirror of https://we.phorge.it/source/phorge.git synced 2024-12-30 01:10:58 +01:00

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
This commit is contained in:
epriestley 2015-06-15 13:52:00 -07:00
parent 9f1235d875
commit a1561a4d3a

View file

@ -179,6 +179,7 @@ final class DivinerAtomQuery extends PhabricatorCursorPagedPolicyAwareQuery {
$xatoms = id(new DivinerAtomQuery()) $xatoms = id(new DivinerAtomQuery())
->setViewer($this->getViewer()) ->setViewer($this->getViewer())
->withNames($names) ->withNames($names)
->withGhosts(false)
->needExtends(true) ->needExtends(true)
->needAtoms(true) ->needAtoms(true)
->needChildren($this->needChildren) ->needChildren($this->needChildren)