#! /usr/bin/perl -wi
# Fix up the output of cvs diff -c so that it works with patch.
# We do this by propagating the full pathname from the Index: line
# into the diff itself.
#
# Thrown together by Jason Merrill <jason@cygnus.com>

while (<>)
{
  if (/^Index: (.*)/) 
    {
      $full = $1;
      print;
      for (1..7)
	{
	  $_ = <>;
	  s/^([-+*]{3}) [^\t]+\t/$1 $full\t/
	    unless m{ /dev/null\t};
	  print;
	}
    }
  else
    {
      print;
    }
}
