mirror of
https://we.phorge.it/source/arcanist.git
synced 2024-11-26 08:42:40 +01:00
Fix a bad interaction between "arc diff --reviewers" and "the first line of a message is always a title"
Summary: Fixes T12069. We implement "arc diff --reviewers" (and "--cc") by parsing a faux message with "Reviewers: ...". After D17122, the first line of the message is always interpreted as a title, so the text ends up in the message body. Instead, use a placeholder title so these fields are never initial fields. Test Plan: Ran `arc diff --reviewers dog`, got only one "Reviewers" field. Reviewers: chad Reviewed By: chad Maniphest Tasks: T12069 Differential Revision: https://secure.phabricator.com/D17147
This commit is contained in:
parent
c243cbbd9f
commit
ade25facfd
1 changed files with 10 additions and 0 deletions
|
@ -1962,7 +1962,13 @@ EOTEXT
|
||||||
$faux_message[] = pht('CC: %s', $this->getArgument('cc'));
|
$faux_message[] = pht('CC: %s', $this->getArgument('cc'));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// See T12069. After T10312, the first line of a message is always parsed
|
||||||
|
// as a title. Add a placeholder so "Reviewers" and "CC" are never the
|
||||||
|
// first line.
|
||||||
|
$placeholder_title = pht('<placeholder>');
|
||||||
|
|
||||||
if ($faux_message) {
|
if ($faux_message) {
|
||||||
|
array_unshift($faux_message, $placeholder_title);
|
||||||
$faux_message = implode("\n\n", $faux_message);
|
$faux_message = implode("\n\n", $faux_message);
|
||||||
$local = array(
|
$local = array(
|
||||||
'(Flags) ' => array(
|
'(Flags) ' => array(
|
||||||
|
@ -2034,6 +2040,10 @@ EOTEXT
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($title === $placeholder_title) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
if (!isset($result['title'])) {
|
if (!isset($result['title'])) {
|
||||||
// We don't have a title yet, so use this one.
|
// We don't have a title yet, so use this one.
|
||||||
$result['title'] = $title;
|
$result['title'] = $title;
|
||||||
|
|
Loading…
Reference in a new issue