1
0
Fork 0
mirror of https://we.phorge.it/source/phorge.git synced 2024-11-22 14:52:41 +01:00

Correct a parameter order swap in "diffusion.historyquery" for Mercurial

Summary: Ref T13666. See T13666#256253. The order of these parameters is incorrect (introduced in D18817, which was trying to turn the revset "A or B" into "B or A"), but when "commit" is the single head of "branch" (which is common), the revset is functionally equivalent.

Test Plan:
An easy reproduction case is to make a "diffusion.historyquery" call manually against a Mercurial repository, with a valid "branch" name and some non-head "commit".

  - Before patch, queried "head^" (by commit hash, not by symbol) of "default" and got "head" too (wrong).
  - Applied patch to `secure001.phacility.net` (my local `hg` web environment is iffy right now).
  - Re-ran the same query, saw "head^" as the first result rather than "head" (all hashes rather than symbols, as above), which is desired.

Reviewers: cspeckmim

Reviewed By: cspeckmim

Maniphest Tasks: T13666

Differential Revision: https://secure.phabricator.com/D21722
This commit is contained in:
epriestley 2021-09-04 17:31:45 -07:00
parent 3b2868e155
commit b9ba0418ed

View file

@ -145,8 +145,8 @@ final class DiffusionHistoryQueryConduitAPIMethod
} else { } else {
$revset_arg = hgsprintf( $revset_arg = hgsprintf(
'reverse(ancestors(%s)) and branch(%s)', 'reverse(ancestors(%s)) and branch(%s)',
$drequest->getBranch(), $commit_hash,
$commit_hash); $drequest->getBranch());
} }
$hg_analyzer = PhutilBinaryAnalyzer::getForBinary('hg'); $hg_analyzer = PhutilBinaryAnalyzer::getForBinary('hg');