From 3fcc3fdedf202d6810da3371fb88eb218a7fcf06 Mon Sep 17 00:00:00 2001 From: Bob Trahan Date: Tue, 17 Feb 2015 13:54:59 -0800 Subject: [PATCH] Diffusion - be sure to properly unserialize result from conduit query Summary: Fixes T7256. Test Plan: Looked at rXPRF0a7a5f69f5d7 in a local instance. things looked great both pre and post patch. Reviewers: epriestley Reviewed By: epriestley Subscribers: Korvin, epriestley Maniphest Tasks: T7256 Differential Revision: https://secure.phabricator.com/D11790 --- .../conduit/DiffusionMergedCommitsQueryConduitAPIMethod.php | 6 ++++-- .../diffusion/controller/DiffusionCommitController.php | 1 + 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/applications/diffusion/conduit/DiffusionMergedCommitsQueryConduitAPIMethod.php b/src/applications/diffusion/conduit/DiffusionMergedCommitsQueryConduitAPIMethod.php index 3c1b1fa73a..867da02331 100644 --- a/src/applications/diffusion/conduit/DiffusionMergedCommitsQueryConduitAPIMethod.php +++ b/src/applications/diffusion/conduit/DiffusionMergedCommitsQueryConduitAPIMethod.php @@ -61,9 +61,10 @@ final class DiffusionMergedCommitsQueryConduitAPIMethod // Remove the merge commit. $hashes = array_diff($hashes, array($commit)); - return DiffusionQuery::loadHistoryForCommitIdentifiers( + $history = DiffusionQuery::loadHistoryForCommitIdentifiers( $hashes, $drequest); + return mpull($history, 'toDictionary'); } protected function getMercurialResult(ConduitAPIRequest $request) { @@ -100,9 +101,10 @@ final class DiffusionMergedCommitsQueryConduitAPIMethod // Remove the merge commit. $hashes = array_diff($hashes, array($commit)); - return DiffusionQuery::loadHistoryForCommitIdentifiers( + $history = DiffusionQuery::loadHistoryForCommitIdentifiers( $hashes, $drequest); + return mpull($history, 'toDictionary'); } } diff --git a/src/applications/diffusion/controller/DiffusionCommitController.php b/src/applications/diffusion/controller/DiffusionCommitController.php index 694a08638b..c0718a9ce5 100644 --- a/src/applications/diffusion/controller/DiffusionCommitController.php +++ b/src/applications/diffusion/controller/DiffusionCommitController.php @@ -894,6 +894,7 @@ final class DiffusionCommitController extends DiffusionController { if (!$merges) { return null; } + $merges = DiffusionPathChange::newFromConduit($merges); $caption = null; if (count($merges) > $limit) {