threads / discuss / 47804

Crash when clone includes magic filenames on Windows

Subject: Crash when clone includes magic filenames on Windows

## tl;dr

5 messages between Feb 10, 2018 and Feb 10, 2018.

replies: 4people: 3as markdown or json

Jeffrey Walton· Feb 10, 2018, 08:55 UTC · lore
Hi Everyone,

I'm seeing this issue on Windows: https://pastebin.com/YfB25E4T . It seems the filename AUX is the culprit. Also see https://blogs.msdn.microsoft.com/oldnewthing/20031022-00/?p=42073 . (Thanks to Milleneumbug on Stack Overflow).

I did not name the file, someone else did. I doubt the filename will be changed.

Searching is not turning up much information: https://www.google.com/search?q=git+"magic+filenames"+windows

Does anyone know how to sidestep the issue on Windows?
Jeff
Torsten Bögershausen· Feb 10, 2018, 09:31 UTC · re: Jeffrey Walton · lore

Re: Crash when clone includes magic filenames on Windows

On Sat, Feb 10, 2018 at 03:55:58AM -0500, Jeffrey Walton wrote:
Show 15 quoted lines
> Hi Everyone,
> 
> I'm seeing this issue on Windows: https://pastebin.com/YfB25E4T . It
> seems the filename AUX is the culprit. Also see
> https://blogs.msdn.microsoft.com/oldnewthing/20031022-00/?p=42073 .
> (Thanks to Milleneumbug on Stack Overflow).
> 
> I did not name the file, someone else did. I doubt the filename will be changed.
> 
> Searching is not turning up much information:
> https://www.google.com/search?q=git+"magic+filenames"+windows
> 
> Does anyone know how to sidestep the issue on Windows?
> 
> Jeff
Thanks for the report.
(Typically nobody (tm) here on the list opens a web-browser to look at external
 material, so here is a shortened version of the pastebin:)

error: unable to create file crypto_stream/lexv2/e/v2/schwabe/sparc-2/e/aux.c: No such file or directory error: unable to create file crypto_stream/lexv2/e/v2/schwabe/sparc-2/e/aux.s: No such file or directory Segmentation fault: 99% (26526/26793)

There are actually 2 problems:
- The filenames named aux.c
  It could be that git -c core.longpaths=true clone xxx
  works, but I don't have a Windows box to test at the moment-
- The crash
  Which Git version do you use?
  It may be a good idea to report it here
  https://github.com/git-for-windows/git
Jeffrey Walton· Feb 10, 2018, 09:42 UTC · re: Torsten Bögershausen · lore

Re: Crash when clone includes magic filenames on Windows

On Sat, Feb 10, 2018 at 4:31 AM, Torsten Bögershausen <tboegi@web.de> wrote:
Show 30 quoted lines
> On Sat, Feb 10, 2018 at 03:55:58AM -0500, Jeffrey Walton wrote:
>> Hi Everyone,
>>
>> I'm seeing this issue on Windows: https://pastebin.com/YfB25E4T . It
>> seems the filename AUX is the culprit. Also see
>> https://blogs.msdn.microsoft.com/oldnewthing/20031022-00/?p=42073 .
>> (Thanks to Milleneumbug on Stack Overflow).
>>
>> I did not name the file, someone else did. I doubt the filename will be changed.
>>
>> Searching is not turning up much information:
>> https://www.google.com/search?q=git+"magic+filenames"+windows
>>
>> Does anyone know how to sidestep the issue on Windows?
>>
>> Jeff
>
> Thanks for the report.
>
> (Typically nobody (tm) here on the list opens a web-browser to look at external
>  material, so here is a shortened version of the pastebin:)
>
> error: unable to create file crypto_stream/lexv2/e/v2/schwabe/sparc-2/e/aux.c: No such file or directory
> error: unable to create file crypto_stream/lexv2/e/v2/schwabe/sparc-2/e/aux.s: No such file or directory
> Segmentation fault:  99% (26526/26793)
>
> There are actually 2 problems:
> - The filenames named aux.c
>   It could be that git -c core.longpaths=true clone xxx
>   works, but I don't have a Windows box to test at the moment-
Thanks. This did not help.
> - The crash
>   Which Git version do you use?
>   It may be a good idea to report it here
>   https://github.com/git-for-windows/git
2.16.1-2
Thanks again.
Jeff
Philip Oakley· Feb 10, 2018, 10:29 UTC · re: Jeffrey Walton · lore

Re: Crash when clone includes magic filenames on Windows

From: "Jeffrey Walton" <noloader@gmail.com>
Show 17 quoted lines
> Hi Everyone,
>
> I'm seeing this issue on Windows: https://pastebin.com/YfB25E4T . It
> seems the filename AUX is the culprit. Also see
> https://blogs.msdn.microsoft.com/oldnewthing/20031022-00/?p=42073 .
> (Thanks to Milleneumbug on Stack Overflow).
>
> I did not name the file, someone else did. I doubt the filename will be 
> changed.
>
> Searching is not turning up much information:
> https://www.google.com/search?q=git+"magic+filenames"+windows
>
> Does anyone know how to sidestep the issue on Windows?
>
> Jeff
>

This comes up on the Git-for-Windows (GfW) issues fairly often https://github.com/git-for-windows/git/issues.

The fetch part of the clone is sucessful, but the final checkout step fails when the AUX (or any other prohibited filename - that's proper cabkward compatibility for you) is to be checked out then the file system (FS) refuses and the checkout 'fails. You do however have the full repo locally.

The trick is probably then to set up a sparse checkout so the AUX is never included on the FS.

However it is an open 'up-for-grabs' project to add such a check in GfW.
Philip 
Philip Oakley· Feb 10, 2018, 15:27 UTC · re: Philip Oakley · lore

Re: Crash when clone includes magic filenames on Windows

From: "Philip Oakley" <philipoakley@iee.org>
Show 33 quoted lines
> From: "Jeffrey Walton" <noloader@gmail.com>
>> Hi Everyone,
>>
>> I'm seeing this issue on Windows: https://pastebin.com/YfB25E4T . It
>> seems the filename AUX is the culprit. Also see
>> https://blogs.msdn.microsoft.com/oldnewthing/20031022-00/?p=42073 .
>> (Thanks to Milleneumbug on Stack Overflow).
>>
>> I did not name the file, someone else did. I doubt the filename will be
>> changed.
>>
>> Searching is not turning up much information:
>> https://www.google.com/search?q=git+"magic+filenames"+windows
>>
>> Does anyone know how to sidestep the issue on Windows?
>>
>> Jeff
>>
> This comes up on the Git-for-Windows (GfW) issues fairly often
> https://github.com/git-for-windows/git/issues.
>
> The fetch part of the clone is sucessful, but the final checkout step
> fails when the AUX (or any other prohibited filename - that's proper
> cabkward compatibility for you) is to be checked out then the file system
> (FS) refuses and the checkout 'fails. You do however have the full repo
> locally.
>
> The trick is probably then to set up a sparse checkout so the AUX is never
> included on the FS.
>
> However it is an open 'up-for-grabs' project to add such a check in GfW.
>
> Philip

One option maybe to extend the $GIT_DIR/info/sparse-checkout capability and add a specific $GIT_DIR/info/never-sparse-checkout file that could carry the complement (files & dirs) options that are platform applicable (no AUX, no COM1, no colons, etc.;-), so that it does not conflict with the users' regular sparse checkout selection in $GIT_DIR/info/sparse-checkout. It's probably easier to understand that way. -- Philip

← back to recent threads