1
0
Fork 0
mirror of https://we.phorge.it/source/arcanist.git synced 2025-01-10 23:01:04 +01:00

Don't give Mercurial empty string as a remote name

Summary:
Fixes T9807. We currently run commands like this in some cases:

  hg push -r master ''

From T9807, it seems that older Mercurial treated `''` in the same way it would treat no argument, while newer Mercurial does not.

Passing `''` is unusual and not intended.

Test Plan:
From T9807, @cspeckmim confirmed that running this command without the `''` works, and @jgelgens tested the patch itself.

I didn't actually run this code myself, since I don't have Mercurial 3.6.1 installed and the fix seems straightfoward.

Reviewers: chad

Reviewed By: chad

Subscribers: cspeckmim

Maniphest Tasks: T9807

Differential Revision: https://secure.phabricator.com/D14531
This commit is contained in:
epriestley 2015-11-18 09:57:07 -08:00
parent a77a77817a
commit b32149495b

View file

@ -1282,10 +1282,16 @@ EOTEXT
$err = $repository_api->execPassthru('push %s', $this->remote);
$cmd = 'hg push';
} else if ($this->isHg) {
$err = $repository_api->execPassthru(
'push -r %s %s',
$this->onto,
$this->remote);
if (strlen($this->remote)) {
$err = $repository_api->execPassthru(
'push -r %s %s',
$this->onto,
$this->remote);
} else {
$err = $repository_api->execPassthru(
'push -r %s',
$this->onto);
}
$cmd = 'hg push';
}