Fixed issue 96, errors when parsing a Mercurial diff.

This commit is contained in:
Julien Issler 2008-12-30 18:21:04 +01:00 committed by Loic d'Anterroches
parent 2078d69a83
commit c33b271519

View File

@ -55,8 +55,14 @@ class IDF_Diff
$files[$current_file]['chunks_def'] = array(); $files[$current_file]['chunks_def'] = array();
$current_chunk = 0; $current_chunk = 0;
continue; continue;
} } else if (preg_match('#^diff -r [^\s]+ -r [^\s]+ (.+)$#', $line, $matches)) {
if (0 === strpos($line, 'Index: ')) { $current_file = $matches[1];
$files[$current_file] = array();
$files[$current_file]['chunks'] = array();
$files[$current_file]['chunks_def'] = array();
$current_chunk = 0;
continue;
} else if (0 === strpos($line, 'Index: ')) {
$current_file = self::getSvnFile($line); $current_file = self::getSvnFile($line);
$files[$current_file] = array(); $files[$current_file] = array();
$files[$current_file]['chunks'] = array(); $files[$current_file]['chunks'] = array();
@ -327,4 +333,4 @@ class IDF_Diff
return Pluf_Template::markSafe($out); return Pluf_Template::markSafe($out);
} }
} }