aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/includes/diff
diff options
context:
space:
mode:
authorNils Adermann <naderman@naderman.de>2010-03-02 01:05:40 +0100
committerNils Adermann <naderman@naderman.de>2010-03-02 01:05:40 +0100
commit021c186be91095397d4e76801738373989360a52 (patch)
tree4a5b42c0ebcaeb0be77edacb839bf164fe2dadc0 /phpBB/includes/diff
parent4f9c3b8f5c0181c2ebf367436f3c0336d8f2251d (diff)
parent3ddedd5ff228cdcc3c0b05000affe3944afc7854 (diff)
downloadforums-021c186be91095397d4e76801738373989360a52.tar
forums-021c186be91095397d4e76801738373989360a52.tar.gz
forums-021c186be91095397d4e76801738373989360a52.tar.bz2
forums-021c186be91095397d4e76801738373989360a52.tar.xz
forums-021c186be91095397d4e76801738373989360a52.zip
Merge commit 'release-3.0.6-RC1'
Diffstat (limited to 'phpBB/includes/diff')
-rw-r--r--phpBB/includes/diff/engine.php16
-rw-r--r--phpBB/includes/diff/renderer.php2
2 files changed, 17 insertions, 1 deletions
diff --git a/phpBB/includes/diff/engine.php b/phpBB/includes/diff/engine.php
index eb0dcce395..e9f0e41b75 100644
--- a/phpBB/includes/diff/engine.php
+++ b/phpBB/includes/diff/engine.php
@@ -49,6 +49,8 @@ if (!defined('IN_PHPBB'))
*/
class diff_engine
{
+ var $skip_whitespace_changes = true;
+
function diff(&$from_lines, &$to_lines, $preserve_cr = true)
{
// Remove empty lines...
@@ -176,6 +178,20 @@ class diff_engine
$add[] = $to_lines[$yi++];
}
+ // Here we are a bit naughty. Naughty Boy... Naughty Boy...
+ // We check if delete and add is filled and only consist of one item
+ if ($this->skip_whitespace_changes && sizeof($delete) == 1 && sizeof($add) == 1)
+ {
+ // Now we simply trim the string and see if the lines are identical
+ // If they are identical we do not need to take them into account for the merge (less conflicts in phpBB)
+ if (trim($delete[0]) === trim($add[0]))
+ {
+ // This line ensures the line found here is correctly copied later (remember: we naughty boys like loops)
+ $xi--; $yi--; $this->xchanged[$xi] = $this->ychanged[$yi] = false;
+ $delete = $add = array();
+ }
+ }
+
if ($delete && $add)
{
$edits[] = new diff_op_change($delete, $add);
diff --git a/phpBB/includes/diff/renderer.php b/phpBB/includes/diff/renderer.php
index 02fb6ccc37..5cb1b6ada9 100644
--- a/phpBB/includes/diff/renderer.php
+++ b/phpBB/includes/diff/renderer.php
@@ -536,7 +536,7 @@ class diff_renderer_raw extends diff_renderer
*/
function get_diff_content($diff)
{
- return '<textarea style="height: 290px;" class="full">' . htmlspecialchars($this->render($diff)) . '</textarea>';
+ return '<textarea style="height: 290px;" rows="15" cols="76" class="full">' . htmlspecialchars($this->render($diff)) . '</textarea>';
}
function _block_header($xbeg, $xlen, $ybeg, $ylen)