@recaptime-dev's working patches + fork for Phorge, a community fork of Phabricator. (Upstream dev and stable branches are at upstream/main and upstream/stable respectively.) hq.recaptime.dev/wiki/Phorge
phorge phabricator
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

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

+17 -12
+17 -12
src/applications/repository/worker/commitmessageparser/PhabricatorRepositoryCommitMessageParserWorker.php
··· 80 80 ->save(); 81 81 } 82 82 83 - $committer_identity = id(new PhabricatorRepositoryIdentityQuery()) 84 - ->setViewer(PhabricatorUser::getOmnipotentUser()) 85 - ->withIdentityNames(array($committer)) 86 - ->executeOne(); 83 + $committer_identity = null; 84 + 85 + if ($committer) { 86 + $committer_identity = id(new PhabricatorRepositoryIdentityQuery()) 87 + ->setViewer(PhabricatorUser::getOmnipotentUser()) 88 + ->withIdentityNames(array($committer)) 89 + ->executeOne(); 87 90 88 - if (!$committer_identity) { 89 - $committer_identity = id(new PhabricatorRepositoryIdentity()) 90 - ->setAuthorPHID($commit->getPHID()) 91 - ->setIdentityName($committer) 92 - ->setAutomaticGuessedUserPHID( 93 - $this->resolveUserPHID($commit, $committer)) 94 - ->save(); 91 + if (!$committer_identity) { 92 + $committer_identity = id(new PhabricatorRepositoryIdentity()) 93 + ->setAuthorPHID($commit->getPHID()) 94 + ->setIdentityName($committer) 95 + ->setAutomaticGuessedUserPHID( 96 + $this->resolveUserPHID($commit, $committer)) 97 + ->save(); 98 + } 95 99 } 96 100 97 101 $data = id(new PhabricatorRepositoryCommitData())->loadOneWhere( ··· 128 132 $this->resolveUserPHID($commit, $committer)); 129 133 $data->setCommitDetail( 130 134 'committerIdentityPHID', $committer_identity->getPHID()); 135 + 136 + $commit->setCommitterIdentityPHID($committer_identity->getPHID()); 131 137 } 132 138 133 139 $repository = $this->repository; ··· 166 172 } 167 173 168 174 $commit->setAuthorIdentityPHID($author_identity->getPHID()); 169 - $commit->setCommitterIdentityPHID($committer_identity->getPHID()); 170 175 171 176 $commit->setSummary($data->getSummary()); 172 177 $commit->save();