On Wed, Nov 09, 2011 at 12:18:20PM +0000, Philip Martin wrote:
> Daniel Näslund <dan...@dannas.name> writes:
> 
> > A side note; when I tested the patch I needed to use abspath's in the
> > patch file or else the target wouldn't get skipped.
> 
> When raising the issue I had difficulty producing the test case because
> I couldn't work out quite what caused a path to get skipped.  I guess
> Windows users might be generating patches with abspaths more than Unix
> users.

Patch targets get skipped in any of these circumstances:

 - the target filename is the empty string (this is just a sanity check)
 - the target is outside of the working copy being patched
 - the target is the working copy root
 - the target is unversioned, missing, ignored, or obstructed
 - the target is a locally deleted directory (this should be revisited
   now that wc-ng has been released)

I also think that the right fix is not putting skipped targets on the
targets_info list. The target info is only used during post-patch processing,
by delete_empty_dirs(). Skipped targets have already been fully
processed at that point.

Reply via email to