This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author eryksun
Recipients Geoff.Alexander, eryksun, paul.moore, steve.dower, tim.golden, vstinner, zach.ware
Date 2021-03-16.04:31:38
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1615869098.85.0.249442685632.issue36213@roundup.psfhosted.org>
In-reply-to
Content
As discussed in msg337357, the Windows API does not support setting the current working directory to a path that starts with \\?\ or \\.\. It's dysfunctional in many cases. Anyway, using a \\?\ path does not remove the length limit on the working directory, which is a hard limit in a process that does not support long DOS paths. I assume this is why CreateProcessW() hasn't been extended to support long paths in lpCurrentDirectory. 

The only behavior that can be addressed here is what to do when CreateProcessW() fails with ERROR_INVALID_PARAMETER (87) if the working directory of the current process is a long path. Maybe subprocess should emit a warning for this error if the working directory is a long path, at least to hint to a developer that this could be the reason for the error. Otherwise the error is difficult to understand if you don't already know what to look for.
History
Date User Action Args
2021-03-16 04:31:38eryksunsetrecipients: + eryksun, paul.moore, vstinner, tim.golden, zach.ware, steve.dower, Geoff.Alexander
2021-03-16 04:31:38eryksunsetmessageid: <1615869098.85.0.249442685632.issue36213@roundup.psfhosted.org>
2021-03-16 04:31:38eryksunlinkissue36213 messages
2021-03-16 04:31:38eryksuncreate