WordPress.org

Make WordPress Core

Changeset 41633


Ignore:
Timestamp:
09/28/2017 01:58:23 PM (4 years ago)
Author:
johnbillion
Message:

External Libraries: Update the Text_Diff_Engine_native class for PHP 7.2 compatibility.

This removes usage of each() and usage of text strings passed to assert().

Props bor0

Fixes #41526

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-includes/Text/Diff/Engine/native.php

    r24362 r41633  
    1919 * code was written by him, and is used/adapted with his permission.
    2020 *
    21  * Copyright 2004-2010 The Horde Project (http://www.horde.org/)
     21 * Copyright 2004-2017 Horde LLC (http://www.horde.org/)
    2222 *
    2323 * See the enclosed file COPYING for license information (LGPL). If you did
    24  * not receive this file, see http://opensource.org/licenses/lgpl-license.php.
     24 * not receive this file, see http://www.horde.org/licenses/lgpl21.
    2525 *
    2626 * @author  Geoffrey T. Dairiki <dairiki@dairiki.org>
     
    190190                }
    191191                $matches = $ymatches[$line];
    192                 reset($matches);
    193                 while (list(, $y) = each($matches)) {
     192                foreach ($matches as $y) {
    194193                    if (empty($this->in_seq[$y])) {
    195194                        $k = $this->_lcsPos($y);
     
    197196                        $ymids[$k] = $ymids[$k - 1];
    198197                        break;
    199                     }
    200                 }
    201                 while (list(, $y) = each($matches)) {
    202                     if ($y > $this->seq[$k - 1]) {
     198                    } elseif ($y > $this->seq[$k - 1]) {
    203199                        assert($y <= $this->seq[$k]);
    204                         /* Optimization: this is a common case: next match is
    205                          * just replacing previous match. */
    206200                        $this->in_seq[$this->seq[$k]] = false;
    207201                        $this->seq[$k] = $y;
    208202                        $this->in_seq[$y] = 1;
    209                     } elseif (empty($this->in_seq[$y])) {
    210                         $k = $this->_lcsPos($y);
    211                         assert($k > 0);
    212                         $ymids[$k] = $ymids[$k - 1];
    213203                    }
    214204                }
     
    331321        $j = 0;
    332322
    333         assert('count($lines) == count($changed)');
     323        assert(count($lines) == count($changed));
    334324        $len = count($lines);
    335325        $other_len = count($other_changed);
     
    352342
    353343            while ($i < $len && ! $changed[$i]) {
    354                 assert('$j < $other_len && ! $other_changed[$j]');
     344                assert($j < $other_len && ! $other_changed[$j]);
    355345                $i++; $j++;
    356346                while ($j < $other_len && $other_changed[$j]) {
     
    384374                        $start--;
    385375                    }
    386                     assert('$j > 0');
     376                    assert($j > 0);
    387377                    while ($other_changed[--$j]) {
    388378                        continue;
    389379                    }
    390                     assert('$j >= 0 && !$other_changed[$j]');
     380                    assert($j >= 0 && !$other_changed[$j]);
    391381                }
    392382
     
    409399                    }
    410400
    411                     assert('$j < $other_len && ! $other_changed[$j]');
     401                    assert($j < $other_len && ! $other_changed[$j]);
    412402                    $j++;
    413403                    if ($j < $other_len && $other_changed[$j]) {
     
    425415                $changed[--$start] = 1;
    426416                $changed[--$i] = 0;
    427                 assert('$j > 0');
     417                assert($j > 0);
    428418                while ($other_changed[--$j]) {
    429419                    continue;
    430420                }
    431                 assert('$j >= 0 && !$other_changed[$j]');
     421                assert($j >= 0 && !$other_changed[$j]);
    432422            }
    433423        }
Note: See TracChangeset for help on using the changeset viewer.