Page MenuHomePhabricator

D11535.diff
No OneTemporary

D11535.diff

diff --git a/src/applications/differential/controller/DifferentialChangesetViewController.php b/src/applications/differential/controller/DifferentialChangesetViewController.php
--- a/src/applications/differential/controller/DifferentialChangesetViewController.php
+++ b/src/applications/differential/controller/DifferentialChangesetViewController.php
@@ -166,6 +166,15 @@
$parser->readParametersFromRequest($request);
+ $generated_paths = id(new DifferentialDiffProperty())->loadOneWhere(
+ 'diffID = %d AND name = %s',
+ $changeset->getDiffID(),
+ 'arc:generated');
+
+ if ($generated_paths) {
+ $parser->setGeneratedPaths($generated_paths->getData());
+ }
+
if ($left && $right) {
$parser->setOriginals($left, $right);
}
diff --git a/src/applications/differential/parser/DifferentialChangesetParser.php b/src/applications/differential/parser/DifferentialChangesetParser.php
--- a/src/applications/differential/parser/DifferentialChangesetParser.php
+++ b/src/applications/differential/parser/DifferentialChangesetParser.php
@@ -46,6 +46,7 @@
private $renderer;
private $characterEncoding;
private $highlightAs;
+ private $generatedPaths = array();
private $highlightingDisabled;
private $showEditAndReplyLinks = true;
private $canMarkDone;
@@ -97,6 +98,14 @@
return $this->characterEncoding;
}
+ public function setGeneratedPaths(array $paths) {
+ $this->generatedPaths = $paths;
+ }
+
+ public function getGeneratedPaths() {
+ return $this->generatedPaths;
+ }
+
public function setRenderer(DifferentialChangesetRenderer $renderer) {
$this->renderer = $renderer;
return $this;
@@ -493,8 +502,19 @@
$generated_guess = (strpos($new_corpus_block, '@'.'generated') !== false);
if (!$generated_guess) {
- $generated_path_regexps = PhabricatorEnv::getEnvConfig(
- 'differential.generated-paths');
+ foreach ($this->generatedPaths as $regex) {
+ if (preg_match($regex, $this->changeset->getFilename())) {
+ $generated_guess = true;
+ break;
+ }
+ }
+ }
+
+ // The following is deprecated and should not be used.
+ if (!$generated_guess) {
+ $key = 'differential.generated-paths';
+ $generated_path_regexps = PhabricatorEnv::getEnvConfig($key);
+
foreach ($generated_path_regexps as $regexp) {
if (preg_match($regexp, $this->changeset->getFilename())) {
$generated_guess = true;

File Metadata

Mime Type
text/plain
Expires
Fri, May 10, 12:12 AM (3 w, 11 h ago)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
6280871
Default Alt Text
D11535.diff (2 KB)

Event Timeline