From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM10-BN7-obe.outbound.protection.outlook.com (mail-bn7nam10on2138.outbound.protection.outlook.com [40.107.92.138]) by sourceware.org (Postfix) with ESMTPS id B25113858C20 for ; Mon, 8 Aug 2022 23:29:25 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org B25113858C20 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=cornell.edu Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=cornell.edu ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=CJKJ+qjWhsb0vDMvKwRaHaXa9FaGqD5ZkC2tUFdcSSc3fJuFoin8eW2uabxpjrfC0EZgQHnTg51Vj8BVaUKTNPIjYd8RZGHbqNrBx8StvTAteTon5EZJdrDgP3rDPTSLXoONPaaLlcurzOo91YfmE60nfDv/0JsxqlGBgkdRsQMY7ifQGEIYEJl21fBMYeRFbCUeScYhZZDZ7AhBJeIHqrXlKdsG18EU1oRqXJilu53HrREMPx//Sx/q492HhN9e3hTirMANORvRMUfiexcPlrFkqnN4KOXYxuNcwJ+coYs/T9NyqpmvM/43spJ4s1WV36StoB3oYe6j6PGHnU2ctA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=gmQKVX9o/Xu/mPkQlu69++UTiyE4ztCZSSR0KpHYwe8=; b=V81pr82u7VwN8I0Z7NeJFkgMWKk5A8jUP3lzM3V2VNGQhdo5jvzFCBZn+TJdEZBzi69FSz2IP6uk9Si7pidDG/UH1uASOGQehhcFy6zq0p7BgjAPo+fN8PF54PIf6cgvhDStf+r+wetN6aTiZhoNyFTBQZEMgR96rpq5SxrwXb1vz+6NIBJ4qpBtnzh7UKrEwv653YzKafuVccOiL1MGW2VlZ+5fW/HwymCJxhx3d/RJe+pVv88Y8H9hgSdqpYEopqhnRavQWuXCVPFde4yxKg2cJ1B14TzUCysdXW8uudToj0WboKZGOx7Itg2Mz9+ZKh4CW9Hlxgl4m0ZXS1XYNg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=cornell.edu; dmarc=pass action=none header.from=cornell.edu; dkim=pass header.d=cornell.edu; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cornell.edu; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=gmQKVX9o/Xu/mPkQlu69++UTiyE4ztCZSSR0KpHYwe8=; b=IcoJckmlnEv/ss6EQC5UahWbR8jEpqDRaGZCksONKogsY+h6AlR6E/mxcbvUs1Y/SWIv2NQZQinfYEQQlh08NZ9ZvRVFNozSffJ+58tKVBx1EsCJD/pZzVIIJISjAZKOPh+Tk/b9nTojQ9hZLRQDKVskh1WugiJO0BknExr4tuI= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=cornell.edu; Received: from BN7PR04MB4388.namprd04.prod.outlook.com (2603:10b6:406:f8::19) by DM5PR04MB0365.namprd04.prod.outlook.com (2603:10b6:3:9d::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5504.16; Mon, 8 Aug 2022 23:29:23 +0000 Received: from BN7PR04MB4388.namprd04.prod.outlook.com ([fe80::901f:a758:30f5:309d]) by BN7PR04MB4388.namprd04.prod.outlook.com ([fe80::901f:a758:30f5:309d%2]) with mapi id 15.20.5504.020; Mon, 8 Aug 2022 23:29:23 +0000 Message-ID: Date: Mon, 8 Aug 2022 19:29:21 -0400 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.12.0 Subject: Re: Deleting a directory with the same name as a shortcut deletes everything in CWD Content-Language: en-US To: cygwin@cygwin.com References: <4b9acea9-b098-2c06-4530-10a4e9ca42b6@oskog97.com> <003884bf-bb7a-984a-668a-21221f142638@t-online.de> From: Ken Brown In-Reply-To: <003884bf-bb7a-984a-668a-21221f142638@t-online.de> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: MN2PR10CA0021.namprd10.prod.outlook.com (2603:10b6:208:120::34) To BN7PR04MB4388.namprd04.prod.outlook.com (2603:10b6:406:f8::19) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 9a829658-d89c-4572-5ee5-08da7995d394 X-MS-TrafficTypeDiagnostic: DM5PR04MB0365:EE_ X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ipt8oXIwalmE2/7fZuxILCYfa/IfDBq1yDMKWngy3UkUrzoiDTn6fRE0nATiBsYQ4BDitIgo10/QZJgu6jbe4jXtADhMsaVNZt6xAMidjD7IlzA4P1uyo5N+YQ92y0qLZLBi//YeEuPC7kZHsH81t+1vU/nmRmZGoEeuVBRfoTUWAvRO+N/uxmYPUnqzb2Faj99KMKVRodlFnRgeFEJ0kikrknywvXW1G3FcWXO5hkzY3iDrOPoOs5W4wTTfEYyDeevc+5q4DHbPKjHfxf1jKauFfsYRghzLdLlmnS0ldwz/M9d2KJ0xZw4JPf/qEwwyewPZrE0aeZT9CQwve3DNxhQfYrwi1f7hUCgg+y4v1tNlSe1I5EUZr2yyMOF2wEBHv1/DUJ7asXmZqy4jqJ4Wb/ts6XBkVmH3Tt+6lTlfx1HyVHEBDyfXNHAh7r3i8+vePC14tcpPn5P1fKs50dDUCZjmPky6mnkQNnWV/n03u9QX/mjfM+kCuviqcLrrAIy5J69aXQa/CVaA5LmR/f7JERBThmZ4I8AVPNBxHt8XRq9QGizShJNs7DMqRSzxSx6oiCItno16BAX6yTYPSc1iYLMvlwFYakVb43np4SJcF50A9ww4e3E6MPfdnO/4b/CBd+J932jtAxfnwFp3ujYPnc/ReclRGAmXCR0cluJzYxdn2J3Dwp8kgfk7VbWVeQFVedxIAQQ8p3eJrTml78u/5ogS5HpV1HmNApQzu6IPoUlMG+XkZaujq6QZDnDQyMs/mGSFjsHxvwHFbPkONN+vf9TgdwDRpYdlBQLTIUm/bYTMSkm3i+OgkhMrS5YWQYzbKuFLP2XCo2bDWq0KsmqiaA== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BN7PR04MB4388.namprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230016)(4636009)(396003)(376002)(136003)(39860400002)(346002)(366004)(186003)(5660300002)(478600001)(786003)(75432002)(6916009)(6512007)(2616005)(316002)(31686004)(31696002)(86362001)(41320700001)(41300700001)(6506007)(53546011)(66556008)(8676002)(66476007)(36756003)(38100700002)(6486002)(66946007)(2906002)(8936002)(45980500001)(43740500002); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?YUVzQUtFdWZlUVd5dkhaMS84MWZGcHpHVDMwd0FrNFdwMkxLd2dCQU9nT0Js?= =?utf-8?B?ckNxWkxiQ3NLNzhScGVJNWJTenZCQnJYQUtGWE5uQ3FlUlp3bWRES2Mzazl0?= =?utf-8?B?Z2NnYmdVNFVCU3FoRW14SDN0d3RadXBGOWl6cWtqK0poQ2JwdENvNVAxL280?= =?utf-8?B?SmYvS1FzSUZ4RlFNbDdMTitoWDdWTjFETlM2UStpL0p3QjJ6aFlWQVlOcmw1?= =?utf-8?B?M05qczNUczJPRER3WmJTU2FHeGFVb0xHOTdxN3FlRXdnNVlwUUZEV3RpZnJB?= =?utf-8?B?UnA5RnBLMjBhTkg3b3oxRncyelVpVGNoS25tVkphY2hMcEdJNkNmZE1kbDNk?= =?utf-8?B?SzZsWlZySlVHc0RvSmFXSlh1em9STXJhdDNOQ3BZTVRYUlpxS0x1SWxWVE5a?= =?utf-8?B?aVUyNFpNeFMrWXlMWVZzMThFRTFCMUtXZzQ3QWN6SFBCckZRS2xYdVp5blFR?= =?utf-8?B?THg1UUwwbG1HZmJyZS9vdWhPeDNkalN3cVF4d1NSY241OHhhOWphVUdTMjZw?= =?utf-8?B?SzRVbWJuZjdZSjJheC91bU0rSkNyUFBwdG9VZUZtenZjelFHV0N0NXhGRG4x?= =?utf-8?B?NDFjcHh3bzBhamhyaUY0VHovWWRWSXpKdE1wNm1WRlBzMWxyZmRYWWJQaHk0?= =?utf-8?B?cU5hL3V2K0loek1ZQjJQQVlCV3h6bkl3c2VaL3hsdWJTZDBaaUdnbUZ4amJm?= =?utf-8?B?WkkzWGhkaVF4SXVzVWx0TjZwMFdRTkFLNDRIaUU1SFVGa2ErVVlhcS9Qd202?= =?utf-8?B?dXM0ait0WC9WYi85WnlPdmJMM3FGQk1SMU9CeU9kZWtpeU84T0JEWkc4YTB3?= =?utf-8?B?WXZKTS9IQ014WGwxM2NpVTVSbDlFVFNEcGpCVDF1YnM4TnRkZUswUWRKQjN6?= =?utf-8?B?YzZISjI0VlZpZGFPV1VndVAwNVFMa1ViY2Q1VlNjZ3BONlBRQzJIUXZob1Vz?= =?utf-8?B?T040Z0J0djRyVk9QM2NTSjJ0Zlh3MVltc0djbXd0QkE4QXRvekp2THkxak9p?= =?utf-8?B?ZlNjTFFMMGhYQ1ZkQlIydWRnS3ArZjIrQ1BlNWJlYXRTSWlNUjFhMGRmU25R?= =?utf-8?B?WEJoMW90clB6ZlJqWkp0WUtQaTU0MVFVZVd0VitRQlhhSE5GMEptWFQwbUQ2?= =?utf-8?B?SGVkcy9IRjJKcUFxRXlsOFJPSTNIMkZZeDlhQ3ZhbVlNeUVEOFVmTlRRN2Qw?= =?utf-8?B?SmlCZEJGNVhHbDJYNVhYK1IzWU1Za1Y5aXovaHRYajFrVENVOTZiUTBIbEFD?= =?utf-8?B?TENqOHZhNHhGdnpYV0cwbWdKV08wNFpkOHFnd3FEUzU5ZnJXaExTWWFzTlFN?= =?utf-8?B?bHNGSXA0bTZYMGs5cjFrNkc3ZWZhR05QMGYvTkd6RmRvQkR1VU50QVBlaERI?= =?utf-8?B?U3JOc3dyWGE4dnlhbWc1OEIzTkZTTEp0Z01vWld5dWFrVWI2R2tFQjZ0QVpY?= =?utf-8?B?ODZWa3lTU0Y4aFRYcnlKSWhCR1ZaMTNyclpIOVVIUnpuc0xuN1N2amlMeVhO?= =?utf-8?B?V0JFNkpzNzZSZkpoaHpsOEEwZzNPNXM1K0pzdzFhR0N4NURPOGNpcWtCUThR?= =?utf-8?B?ZHR3alVSWE4vSmhhaHcrZi9oOVYwNkNmblZhYkhmUXlaaE1nSm1XSGx2VTRn?= =?utf-8?B?WGx5NXo4ZkhDYklqK08wZFI4Q3hWc201YmVEYTRveXNnajAyMHV4akF3aFds?= =?utf-8?B?U0p6SWZCNjFzazE0MzhZMzluUUZ4bHcrRkNrdzVJdVpaZlY1UlhuMVRIRHh6?= =?utf-8?B?MlFzYnByK3ZWSmExS0dKT25lUkZJL3BGNnF6VXZrdXRpQ05xamxPb0lLRWQw?= =?utf-8?B?L1UrYmdzZFYzZ2x6NHV0T1psQWMzUVVxNDFrRVcweXZhMGhnL0NqS210Ykdn?= =?utf-8?B?aTNPWnVXVU5EYWhrUlVub2RmdVphOTZNa2c4YTdOWUoyY3JubG0wK0o4RHFi?= =?utf-8?B?NnlNNkF6bFRSaUxwTUh6WEZNQUlOcmJseUpsSUIxdVFxcXZkWGhJVzQ5T25S?= =?utf-8?B?bDVVMnFIRFc4cEJzbXFPcEdPM2NTUGt5VzJ1cnV3OUFTeGVpWGJTeUNyeXk0?= =?utf-8?B?YTF4dmpnREZ4R0QrMkh0TDRyWFBpVGxkTUllTUlKZ2FRcmxzQ20zZnBzckhk?= =?utf-8?B?U0NnMTBrT2RibmYyamtsM3VvV2pOdHVnNWh4NWNzYzliR2k4dUsrNmtFMWJK?= =?utf-8?Q?C/SJXuTbVadWLfxa0wjBiwbzf8QIAveihINlYYFcQKAB?= X-OriginatorOrg: cornell.edu X-MS-Exchange-CrossTenant-Network-Message-Id: 9a829658-d89c-4572-5ee5-08da7995d394 X-MS-Exchange-CrossTenant-AuthSource: BN7PR04MB4388.namprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Aug 2022 23:29:23.5806 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 5d7e4366-1b9b-45cf-8e79-b14b27df46e1 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: cZovabtBdofgXimaod50B1ug8TBuFU2xBUUm+YH4FZgdW25r49MsEWdr/YtrPzQUcR63VQQWVnll2gxnQ9LTjQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR04MB0365 X-Spam-Status: No, score=-3.1 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, JMQ_SPF_NEUTRAL, NICE_REPLY_A, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: cygwin@cygwin.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: General Cygwin discussions and problem reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Aug 2022 23:29:28 -0000 On 8/8/2022 7:56 AM, Christian Franke wrote: > Testcase: > > $ ls -a > .  .. > > $ touch link.lnk file.txt > > $ ls -a > .  ..  file.txt  link.lnk > > $ stat -c %F link.lnk > regular empty file > > $ stat -c %F link > directory This happens because symlink_info::check returns -1 instead of 0 when called on "link". The main loop over suffixes finds and rejects link.lnk but then leaves "res" as -1 when it continues looping. The following patch fixes the problem: --- a/winsup/cygwin/path.cc +++ b/winsup/cygwin/path.cc @@ -3422,6 +3422,7 @@ restart: { fileattr = INVALID_FILE_ATTRIBUTES; set_error (ENOENT); + res = 0; continue; } It's possible that a better fix would be to set res = 0 at the beginning of each iteration of the loop, but I'll have to study the code more carefully before I'm sure of that. Also, the comment preceding symlink_info::check needs to be fixed to correctly indicate what a negative return value means. I'll look at all this more carefully tomorrow if no one beats me to it. Ken