mirror of
https://we.phorge.it/source/phorge.git
synced 2024-12-23 14:00:56 +01:00
Fix two issues with Differential updates and Owners
Summary: Ref T13114. - Followup fix for D19267, which didn't work correctly with //new// revision creation. - Followup fix for changes in T11015. Some of the querying logic was still handling "/x.y" and "/x.y/" differently. Instead, normalize consistently to "/x.y/" Test Plan: - Created a new revision cleanly. - Created a package owning only a `example.txt` file and saw Differential find it as an owning package in the table of contents. Maniphest Tasks: T13114 Differential Revision: https://secure.phabricator.com/D19268
This commit is contained in:
parent
93cb6e3bde
commit
7915445543
2 changed files with 15 additions and 10 deletions
|
@ -137,7 +137,9 @@ final class DifferentialRevisionUpdateTransaction
|
|||
continue;
|
||||
}
|
||||
|
||||
$is_attached = ($diff->getRevisionID() == $object->getID());
|
||||
$is_attached =
|
||||
($diff->getRevisionID()) &&
|
||||
($diff->getRevisionID() == $object->getID());
|
||||
if ($is_attached) {
|
||||
$is_active = ($diff_phid == $object->getActiveDiffPHID());
|
||||
} else {
|
||||
|
|
|
@ -393,19 +393,22 @@ final class PhabricatorOwnersPackage
|
|||
}
|
||||
|
||||
public static function splitPath($path) {
|
||||
$trailing_slash = preg_match('@/$@', $path) ? '/' : '';
|
||||
$path = trim($path, '/');
|
||||
$result = array(
|
||||
'/',
|
||||
);
|
||||
|
||||
$parts = explode('/', $path);
|
||||
$buffer = '/';
|
||||
foreach ($parts as $part) {
|
||||
if (!strlen($part)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
$result = array();
|
||||
while (count($parts)) {
|
||||
$result[] = '/'.implode('/', $parts).$trailing_slash;
|
||||
$trailing_slash = '/';
|
||||
array_pop($parts);
|
||||
$buffer = $buffer.$part.'/';
|
||||
$result[] = $buffer;
|
||||
}
|
||||
$result[] = '/';
|
||||
|
||||
return array_reverse($result);
|
||||
return $result;
|
||||
}
|
||||
|
||||
public function attachPaths(array $paths) {
|
||||
|
|
Loading…
Reference in a new issue