mirror of
https://we.phorge.it/source/phorge.git
synced 2024-11-22 14:52:41 +01:00
Prevent creation of empty repository identities
Summary: Fixes issue reported in https://secure.phabricator.com/rPf191a66490b194785fae28c062b71be99bb14584#43240 Test Plan: Imported an SVN repo, observed clean import instead of daemon exception. Reviewers: epriestley Reviewed By: epriestley Subscribers: Korvin Differential Revision: https://secure.phabricator.com/D19466
This commit is contained in:
parent
dbe72df557
commit
b8b2d1672d
1 changed files with 17 additions and 12 deletions
|
@ -80,18 +80,22 @@ abstract class PhabricatorRepositoryCommitMessageParserWorker
|
|||
->save();
|
||||
}
|
||||
|
||||
$committer_identity = id(new PhabricatorRepositoryIdentityQuery())
|
||||
->setViewer(PhabricatorUser::getOmnipotentUser())
|
||||
->withIdentityNames(array($committer))
|
||||
->executeOne();
|
||||
$committer_identity = null;
|
||||
|
||||
if (!$committer_identity) {
|
||||
$committer_identity = id(new PhabricatorRepositoryIdentity())
|
||||
->setAuthorPHID($commit->getPHID())
|
||||
->setIdentityName($committer)
|
||||
->setAutomaticGuessedUserPHID(
|
||||
$this->resolveUserPHID($commit, $committer))
|
||||
->save();
|
||||
if ($committer) {
|
||||
$committer_identity = id(new PhabricatorRepositoryIdentityQuery())
|
||||
->setViewer(PhabricatorUser::getOmnipotentUser())
|
||||
->withIdentityNames(array($committer))
|
||||
->executeOne();
|
||||
|
||||
if (!$committer_identity) {
|
||||
$committer_identity = id(new PhabricatorRepositoryIdentity())
|
||||
->setAuthorPHID($commit->getPHID())
|
||||
->setIdentityName($committer)
|
||||
->setAutomaticGuessedUserPHID(
|
||||
$this->resolveUserPHID($commit, $committer))
|
||||
->save();
|
||||
}
|
||||
}
|
||||
|
||||
$data = id(new PhabricatorRepositoryCommitData())->loadOneWhere(
|
||||
|
@ -128,6 +132,8 @@ abstract class PhabricatorRepositoryCommitMessageParserWorker
|
|||
$this->resolveUserPHID($commit, $committer));
|
||||
$data->setCommitDetail(
|
||||
'committerIdentityPHID', $committer_identity->getPHID());
|
||||
|
||||
$commit->setCommitterIdentityPHID($committer_identity->getPHID());
|
||||
}
|
||||
|
||||
$repository = $this->repository;
|
||||
|
@ -166,7 +172,6 @@ abstract class PhabricatorRepositoryCommitMessageParserWorker
|
|||
}
|
||||
|
||||
$commit->setAuthorIdentityPHID($author_identity->getPHID());
|
||||
$commit->setCommitterIdentityPHID($committer_identity->getPHID());
|
||||
|
||||
$commit->setSummary($data->getSummary());
|
||||
$commit->save();
|
||||
|
|
Loading…
Reference in a new issue