On Unix, files are hidden from the output of ls by default when their names start with a .. On Windows, there is an explicit flag that you need to set. It is quite uncommon, though, to hide all of the "dot files" on Windows, which is why Git hides only .git by default, and it has a setting to override this default (core.hideDotFiles). The code to determine whether that flag needs to be set for a given file had a buffer overrun, though, if the path that was passed into the function ended with a directory separator. This patch fixes this. The original contribution by Alex is over at https://github.com/gitgitgadget/git/pull/414, and I worked with him to evolve it into the current version. Cc: Alexandr Miloslavskiy alexandr.miloslavskiy@xxxxxxxxxxx [alexandr.miloslavskiy@xxxxxxxxxxx] Johannes Schindelin (1): mingw: avoid a buffer overrun in `needs_hiding()` compat/mingw.c | 2 ++ 1 file changed, 2 insertions(+) base-commit: 566a1439f6f56c2171b8853ddbca0ad3f5098770 Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-427%2Fdscho%2Ffix-needs-hiding-buffer-overrun-v1 Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-427/dscho/fix-needs-hiding-buffer-overrun-v1 Pull-Request: https://github.com/gitgitgadget/git/pull/427 -- gitgitgadget