Skip to content

fix: shorten GetPipeName() output causing Unix crash - #2579

Closed
Thundernerd wants to merge 1 commit into
sourcegit-scm:masterfrom
Thundernerd:fix/unix-pipename-crash
Closed

fix: shorten GetPipeName() output causing Unix crash#2579
Thundernerd wants to merge 1 commit into
sourcegit-scm:masterfrom
Thundernerd:fix/unix-pipename-crash

Conversation

@Thundernerd

Copy link
Copy Markdown

This is a hotfix to combat the hard crash on unix machines which was introduced by e0e2ab6

On Unix machines the NamedPipeServerStream is created with a Path.GetTempPath() and "CoreFXPipe_" prefix, causing the recent change to go over the maximum length of the pipename of 104 characters: dotnet Unix PipeStream sourcecode.

Note
In the case of a long username this can still break as we now add an extra 16 characters from the hash to this pipe name.

Closes #2576

@JC-Chung

Copy link
Copy Markdown
Contributor

Sorry for not considering the length limit when making this change in the first place.

One follow-up thought: would it make sense to also shorten the hash from 16 characters to something like 8 characters? That would give us even more headroom against the Unix domain socket path length limit, while still keeping the collision probability low enough for normal use cases.

Thanks for the fix!

@Thundernerd

Copy link
Copy Markdown
Author

@JC-Chung no worries, it happens! Shortening the hash would definitely help yes. I think anything that can be shortened will help :D

@gadfly3173

Copy link
Copy Markdown
Contributor

The target branch should be develop

@Thundernerd

Copy link
Copy Markdown
Author

Closing in favor of #2585 with correct target branch, unable to modify it in this one.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[CRASH] SourceGit v2026.16 continuously crashed and cannot open on macOS 26.5.2

3 participants