• Show log

    Commit

  • Hash : fe3057b4
    Author : Patrick Steinhardt
    Date : 2016-05-03T17:36:09

    diff: simplify code for handling empty dirs
    
    When determining diffs between two iterators we may need to
    recurse into an unmatched directory for the "new" iterator when
    it is either a prefix to the current item of the "old" iterator
    or when untracked/ignored changes are requested by the user and
    the directory is untracked/ignored.
    
    When advancing into the directory and no files are found, we will
    get back `GIT_ENOTFOUND`. If so, we simply skip the directory,
    handling resulting unmatched old items in the next iteration. The
    other case of `iterator_advance_into` returning either
    `GIT_NOERROR` or any other error but `GIT_ENOTFOUND` will be
    handled by the caller, which will now either compare the first
    directory entry of the "new" iterator in case of `GIT_ENOERROR`
    or abort on other cases.
    
    Improve readability of the code to make the above logic more
    clear.