From 066fcb80a1e7be8cf8d356dec47a9976d636b2c7 Mon Sep 17 00:00:00 2001 From: Ori Livneh Date: Tue, 26 May 2015 03:35:59 +0200 Subject: [PATCH] Make the output of UnifiedDiffFormatter match diff -u GNU 'diff -u' prefixes each line with either a space, a '+', or a '-'. UnifiedDiffFormatter does the same, but it also adds an additional column of whitespace between the prefix and the line. GNU diff only does that in non-unified mode. Fix this by implementing lines() in UnifiedDiffFormatter, overriding the parent class implementation. Bug: T100069 Change-Id: I1bf1b8e6d1d5aceb2c3836548f492f7edebe5a12 --- includes/diff/UnifiedDiffFormatter.php | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/includes/diff/UnifiedDiffFormatter.php b/includes/diff/UnifiedDiffFormatter.php index 32a76055ee..5f3ad3d7bb 100644 --- a/includes/diff/UnifiedDiffFormatter.php +++ b/includes/diff/UnifiedDiffFormatter.php @@ -36,6 +36,16 @@ class UnifiedDiffFormatter extends DiffFormatter { /** @var int */ protected $trailingContextLines = 2; + /** + * @param string[] $lines + * @param string $prefix + */ + protected function lines( $lines, $prefix = ' ' ) { + foreach ( $lines as $line ) { + echo "{$prefix}{$line}\n"; + } + } + /** * @param string[] $lines */ -- 2.20.1