+ private function format_line($line) {
+ $lineobj = new ContentProvider('commitdiff', 'patch_diffline');
+ $class = "";
+ if($this->tree['parents'] > 1) {
+ $prefix = substr($line, 0, $this->tree['parents']);
+ if(preg_match('/@/', $prefix))
+ $class = " chunk_header";
+ else if(preg_match('/\\/', $prefix))
+ $class = " incomplete";
+ else if(preg_match('/+/', $prefix))
+ $class = " add";
+ else if(preg_match('/-/', $prefix))
+ $class = " rem";
+ } else {
+ $prefix = substr($line, 0, 1);
+ if($prefix == '@')
+ $class = " chunk_header";
+ else if($prefix == '\\')
+ $class = " incomplete";
+ else if($prefix == '+')
+ $class = " add";
+ else if($prefix == '-')
+ $class = " rem";
+ }
+ $lineobj->set('class', $class);
+ $line = Tools::replaceTabs($line);
+ $lineobj->set('line', htmlentities($line));
+
+ return $lineobj;
+ }
+