3.0.7(0.338/5/3): Possible reference to Developer's instances of dev files in deployed build
Ken Brown
kbrown@cornell.edu
Tue Dec 10 08:44:00 GMT 2019
On 12/9/2019 8:05 AM, Corinna Vinschen wrote:
> On Dec 9 12:47, Ken Brown wrote:
>> On 12/9/2019 4:17 AM, Corinna Vinschen wrote:
>>> On Dec 7 21:03, Ken Brown wrote:
>>>> I don't have any words of wisdom here, but I need to correct something I said
>>>> earlier.
>>>>
>>>> On 12/4/2019 3:50 PM, Ken Brown wrote:
>>>>> The assertion fails because 'Z:' doesn't contain a backslash.
>>>>
>>>> This is not quite right. It's true that path_conv::check strips the trailing
>>>> backslash from Z:\, but then it adds it back before calling symlink_info::check:
>>>>
>>>> /* If path is only a drivename, Windows interprets it as the
>>>> current working directory on this drive instead of the root
>>>> dir which is what we want. So we need the trailing backslash
>>>> in this case. */
>>>> if (full_path[0] && full_path[1] == ':' && full_path[2] == '\0')
>>>> {
>>>> full_path[2] = '\\';
>>>> full_path[3] = '\0';
>>>> }
>>>>
>>>> Thus symlink_info::check is in fact called on Z:\, but the assertion fails
>>>> because the code at path.cc:2905 is looking for a backslash prior to the
>>>> trailing backslash. So maybe the right fix for the assertion failure is the
>>>> following:
>>>>
>>>> --- a/winsup/cygwin/path.cc
>>>> +++ b/winsup/cygwin/path.cc
>>>> @@ -2895,7 +2895,8 @@ restart:
>>>> slow down normal operation. This extra check only kicks in if
>>>> we encountered a STATUS_OBJECT_NAME_NOT_FOUND *and* we didn't
>>>> already attach a suffix. */
>>>> - if (!restarted && !*ext_here && !(mount_flags & MOUNT_DOS))
>>>> + if (!restarted && !*ext_here && ext_here[-1] != '\\'
>>>> + && !(mount_flags & MOUNT_DOS))
>>>> {
>>>> /* Check for trailing dot or space or leading space in
>>>> last component. */
>>>
>>> Ok, please push that. I'll create a snapshot so Wilfed can test this.
>>
>> Done. I'll document it once Wilfed verifies that it fixes his problem.
>
> Great! I created new snapshots.
>
> Wilfed, please test if the latest snapshot from
> https://cygwin.com/snapshots/ fixes your problem.
Tim, could you test it also to see if it solves the problem you reported in
https://cygwin.com/ml/cygwin/2019-10/msg00155.html?
Thanks.
Ken
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
More information about the Cygwin
mailing list