Properly transcode absolute LoadDLL paths for WINE #1974
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
We have this sub-protocol in the iserv-proxy (which follows the sub-TH protocol). The design is horrendous, and needs to be rethought. The issue we were seeing is that we started the sub-protocol, because a path looked like it was absolute, however on the receiving end (windows), the path /foo/bar/baz, is not an absolute windows path. Thus the corresponding branch dealing with the sub-protocol was not taken and we were stuck with messages sent for the primary protocol, and not understood by the sub-protocol.
This change transcodes unix paths to windows paths, IF the ISERV_TARGET environment var is set to WINE. In this case we know we can use Z:\ as / and share the same file system. This is good enough for haskell.nix, but a massive hack generally.