mirror of
https://we.phorge.it/source/phorge.git
synced 2024-11-26 00:32:42 +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();
|
->save();
|
||||||
}
|
}
|
||||||
|
|
||||||
$committer_identity = id(new PhabricatorRepositoryIdentityQuery())
|
$committer_identity = null;
|
||||||
->setViewer(PhabricatorUser::getOmnipotentUser())
|
|
||||||
->withIdentityNames(array($committer))
|
|
||||||
->executeOne();
|
|
||||||
|
|
||||||
if (!$committer_identity) {
|
if ($committer) {
|
||||||
$committer_identity = id(new PhabricatorRepositoryIdentity())
|
$committer_identity = id(new PhabricatorRepositoryIdentityQuery())
|
||||||
->setAuthorPHID($commit->getPHID())
|
->setViewer(PhabricatorUser::getOmnipotentUser())
|
||||||
->setIdentityName($committer)
|
->withIdentityNames(array($committer))
|
||||||
->setAutomaticGuessedUserPHID(
|
->executeOne();
|
||||||
$this->resolveUserPHID($commit, $committer))
|
|
||||||
->save();
|
if (!$committer_identity) {
|
||||||
|
$committer_identity = id(new PhabricatorRepositoryIdentity())
|
||||||
|
->setAuthorPHID($commit->getPHID())
|
||||||
|
->setIdentityName($committer)
|
||||||
|
->setAutomaticGuessedUserPHID(
|
||||||
|
$this->resolveUserPHID($commit, $committer))
|
||||||
|
->save();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$data = id(new PhabricatorRepositoryCommitData())->loadOneWhere(
|
$data = id(new PhabricatorRepositoryCommitData())->loadOneWhere(
|
||||||
|
@ -128,6 +132,8 @@ abstract class PhabricatorRepositoryCommitMessageParserWorker
|
||||||
$this->resolveUserPHID($commit, $committer));
|
$this->resolveUserPHID($commit, $committer));
|
||||||
$data->setCommitDetail(
|
$data->setCommitDetail(
|
||||||
'committerIdentityPHID', $committer_identity->getPHID());
|
'committerIdentityPHID', $committer_identity->getPHID());
|
||||||
|
|
||||||
|
$commit->setCommitterIdentityPHID($committer_identity->getPHID());
|
||||||
}
|
}
|
||||||
|
|
||||||
$repository = $this->repository;
|
$repository = $this->repository;
|
||||||
|
@ -166,7 +172,6 @@ abstract class PhabricatorRepositoryCommitMessageParserWorker
|
||||||
}
|
}
|
||||||
|
|
||||||
$commit->setAuthorIdentityPHID($author_identity->getPHID());
|
$commit->setAuthorIdentityPHID($author_identity->getPHID());
|
||||||
$commit->setCommitterIdentityPHID($committer_identity->getPHID());
|
|
||||||
|
|
||||||
$commit->setSummary($data->getSummary());
|
$commit->setSummary($data->getSummary());
|
||||||
$commit->save();
|
$commit->save();
|
||||||
|
|
Loading…
Reference in a new issue