HomePhorge

Use extended policies in Differential diffs

Description

Use extended policies in Differential diffs

Summary:
Fixes T9648. Diffs currently use return $this->getRevision()->getViewPolicy(); to inherit their revision's view policy.

After the introduction of object policies, this is wrong for policies like "Subscribers", because it means "Subscribers to this object, the diff". Since Diffs have no subscribers, this always fails.

Instead, use extended policies so that the object policy evaluates in the context of the correct object (the revision).

Test Plan:

  • Create a revision.
  • Subscribe alice to it.
  • Set view policy to "Subscribers".
  • View revision as alice.
  • Before patch: nonsense fatal about missing diff because of policy error.
  • After patch: alice can see the revision.

Reviewers: chad

Reviewed By: chad

Maniphest Tasks: T9648

Differential Revision: https://secure.phabricator.com/D17123

Details

Provenance
epriestleyAuthored on Jan 1 2017, 8:36 AM
themackabuPushed on Mar 25 2025, 8:07 PM
Parents
rP81e2a1cf6b22: Always parse the first line of a commit message as a title
Branches
Unknown
Tags
Unknown

Event Timeline