| @@ 566-571 (lines=6) @@ | ||
| 563 | $op = $x['op']; |
|
| 564 | ++$p; |
|
| 565 | switch ( $op ) { |
|
| 566 | case self::XDL_BDOP_INS: |
|
| 567 | $x = unpack( 'Csize', substr( $diff, $p, 1 ) ); |
|
| 568 | $p++; |
|
| 569 | $out .= substr( $diff, $p, $x['size'] ); |
|
| 570 | $p += $x['size']; |
|
| 571 | break; |
|
| 572 | case self::XDL_BDOP_INSB: |
|
| 573 | $x = unpack( 'Vcsize', substr( $diff, $p, 4 ) ); |
|
| 574 | $p += 4; |
|
| @@ 572-577 (lines=6) @@ | ||
| 569 | $out .= substr( $diff, $p, $x['size'] ); |
|
| 570 | $p += $x['size']; |
|
| 571 | break; |
|
| 572 | case self::XDL_BDOP_INSB: |
|
| 573 | $x = unpack( 'Vcsize', substr( $diff, $p, 4 ) ); |
|
| 574 | $p += 4; |
|
| 575 | $out .= substr( $diff, $p, $x['csize'] ); |
|
| 576 | $p += $x['csize']; |
|
| 577 | break; |
|
| 578 | case self::XDL_BDOP_CPY: |
|
| 579 | $x = unpack( 'Voff/Vcsize', substr( $diff, $p, 8 ) ); |
|
| 580 | $p += 8; |
|
| @@ 578-582 (lines=5) @@ | ||
| 575 | $out .= substr( $diff, $p, $x['csize'] ); |
|
| 576 | $p += $x['csize']; |
|
| 577 | break; |
|
| 578 | case self::XDL_BDOP_CPY: |
|
| 579 | $x = unpack( 'Voff/Vcsize', substr( $diff, $p, 8 ) ); |
|
| 580 | $p += 8; |
|
| 581 | $out .= substr( $base, $x['off'], $x['csize'] ); |
|
| 582 | break; |
|
| 583 | default: |
|
| 584 | wfDebug( __METHOD__ . ": invalid op\n" ); |
|
| 585 | return false; |
|