Skip to content

Commit 02695d5

Browse files
committed
Fix #58 - Side by side diff shows empty diff
1 parent acd12cb commit 02695d5

File tree

1 file changed

+25
-4
lines changed

1 file changed

+25
-4
lines changed

lib/jblond/Diff/Renderer/Html/SideBySide.php

Lines changed: 25 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -208,15 +208,11 @@ public function generateLinesReplace(array $changes): string
208208
$fromLine = $changes['base']['offset'] + $lineNo + 1;
209209
$toLine = " ";
210210
$changedLine = " ";
211-
212211
if (isset($changes['changed']['lines'][$lineNo])) {
213212
$toLine = $changes['changed']['offset'] + $lineNo + 1;
214213
$changedLine = $changes['changed']['lines'][$lineNo];
215214
}
216215

217-
$line = str_replace(["\0", "\1"], $this->options['deleteMarkers'], $line);
218-
$changedLine = str_replace(["\0", "\1"], $this->options['insertMarkers'], $changedLine);
219-
220216
$html .= <<<HTML
221217
<tr>
222218
<th>$fromLine</th>
@@ -230,6 +226,31 @@ public function generateLinesReplace(array $changes): string
230226
</tr>
231227
HTML;
232228
}
229+
230+
return $html;
231+
}
232+
233+
foreach ($changes['changed']['lines'] as $lineNo => $changedLine) {
234+
$toLine = $changes['changed']['offset'] + $lineNo + 1;
235+
$fromLine = "&nbsp;";
236+
$line = "&nbsp;";
237+
if (isset($changes['base']['lines'][$lineNo])) {
238+
$fromLine = $changes['base']['offset'] + $lineNo + 1;
239+
$line = $changes['base']['lines'][$lineNo];
240+
}
241+
242+
$html .= <<<HTML
243+
<tr>
244+
<th>$fromLine</th>
245+
<td class="Left">
246+
<span>$line</span>
247+
</td>
248+
<th>$toLine</th>
249+
<td class="Right">
250+
<span>$changedLine</span>
251+
</td>
252+
</tr>
253+
HTML;
233254
}
234255

235256
return $html;

0 commit comments

Comments
 (0)