f8bf95b9ff
On Windows, if Vim is invoked with a working directory starting with a lowercase drive letter (e.g. c:\<path> instead of C:\<path>), some mappings in the blame buffer do not work correctly. For example, hitting Enter on a line throws an exception rather than showing the associated commit. The reason for this is that the b:git_dir variable is not being set on the blame buffer. The reason in turn for this is that the path to the blame buffer is being stored in s:temp_files with an uppercase drive letter, but in the fugitive_temp augroup, '<afile>:p' is being expanded with a lowercase drive letter, so the lookup in s:temp_files fails. Fix this by converting paths to lowercase before using them as keys for the s:tempfile dictionary. Because of the way Vim generates temporary file names, this is safe even on platforms with case-sensitive file systems.