• Show log

    Commit

  • Hash : 45f24e78
    Author : Edward Thomson
    Date : 2019-04-12T08:54:06

    git_repository_init: stop traversing at windows root
    
    Stop traversing the filesystem at the Windows directory root.  We were
    calculating the filesystem root for the given directory to create, and
    walking up the filesystem hierarchy.  We intended to stop when the
    traversal path length is equal to the root path length (ie, stopping at
    the root, since no path may be shorter than the root path).
    
    However, on Windows, the root path may be specified in two different
    ways, as either `Z:` or `Z:\`, where `Z:` is the current drive letter.
    `git_path_dirname_r` returns the path _without_ a trailing slash, even
    for the Windows root.  As a result, during traversal, we need to test
    that the traversal path is _less than or equal to_ the root path length
    to determine if we've hit the root to ensure that we stop when our
    traversal path is `Z:` and our calculated root path was `Z:\`.