From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Thierry Volpiatto Newsgroups: gmane.emacs.bugs Subject: bug#58919: 28.2; dired-copy-file-recursive fails to overwrite directory Date: Tue, 01 Nov 2022 17:34:08 +0000 Message-ID: <8735b2r1ye.fsf@posteo.net> References: <87y1sws6eq.fsf@posteo.net> <83wn8gdu4k.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="16378"; mail-complaints-to="usenet@ciao.gmane.io" Cc: 58919@debbugs.gnu.org, Paul Eggert To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Tue Nov 01 19:00:32 2022 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1opvYt-00045I-Jm for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 01 Nov 2022 19:00:31 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1opvYT-0000tf-GX; Tue, 01 Nov 2022 14:00:05 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1opvYR-0000tG-HK for bug-gnu-emacs@gnu.org; Tue, 01 Nov 2022 14:00:03 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1opvYR-0002AH-8G for bug-gnu-emacs@gnu.org; Tue, 01 Nov 2022 14:00:03 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1opvYR-0005KZ-2l for bug-gnu-emacs@gnu.org; Tue, 01 Nov 2022 14:00:03 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Thierry Volpiatto Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 01 Nov 2022 18:00:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 58919 X-GNU-PR-Package: emacs Original-Received: via spool by 58919-submit@debbugs.gnu.org id=B58919.166732554320365 (code B ref 58919); Tue, 01 Nov 2022 18:00:03 +0000 Original-Received: (at 58919) by debbugs.gnu.org; 1 Nov 2022 17:59:03 +0000 Original-Received: from localhost ([127.0.0.1]:44202 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1opvXT-0005IP-2x for submit@debbugs.gnu.org; Tue, 01 Nov 2022 13:59:03 -0400 Original-Received: from mout02.posteo.de ([185.67.36.66]:38521) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1opvXR-0005Hs-Mw for 58919@debbugs.gnu.org; Tue, 01 Nov 2022 13:59:02 -0400 Original-Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id B5381240110 for <58919@debbugs.gnu.org>; Tue, 1 Nov 2022 18:58:55 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1667325535; bh=eiNNlJs0AxX8Ve5FSJINCtd9ZpDxD+2GnTXGnMVLNeU=; h=From:To:Cc:Subject:Date:Autocrypt:OpenPGP:From; b=JEBnngs30W5J3BYpYmfzJ+nuwmAHBt4Ml/rJACtu0Q61jTTNNoxVGRQvuKv4wHOFU pfuh0hAcRXxyJq+wbS4rP12IrN1ScvO0+54A0NWl0kEbcuafTFogNIGcgb5bFNPFCT YVtgH8tcEucF02LP9GD+XysbQq4M/EuV61cxsPmoVdhGlL9Y3A3LSv0kAVoMYz8J7w qtTZdhZEM0XJjcAen7+70hAbE6xgu+ErGAenaUoHa13OCr1AKkMwy9rSFRlO6iVBY0 UeVDRrki6m9wjOz1nm6UjFFXoOCI59rCQ1UGwHGQvqyzv/2PHwckJE9i+37rSPoiVH xXOxoPjS75CCQ== Original-Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4N1ySY5rykz9rxS; Tue, 1 Nov 2022 18:58:53 +0100 (CET) In-reply-to: <83wn8gdu4k.fsf@gnu.org> Autocrypt: addr=thievol@posteo.net; prefer-encrypt=mutual; keydata= mQGNBF8ylcIBDADG+hy+zR6L4/vbdDDZuSaMmSrU3A5QZJpeBCvxTr7MpzzruZbhLPW1K3R6N2MA edi8Y+C8o27FVRIjpdbaKMGu9je7JV/TbUQYo3SOwCK1vM4LUn4V6ZLzSYkuiEt4eyMoiDdyvN0p kcK6P9x9DCetcEVszXzQg+yzCVrQ2hXWDXWT4M18EC3wtO7RHPouMqGiwBFhBAYErCqFWFxQHkfb tG/4yGyJ58rglb65O3qijjMWvYwcWZun9/7qm8Z4/4mHopmo2zgU+OrptnLSZfkZGz3Y7Uf452xQ GVq0Fv75NPvQru7y+DYVhuVXXyAmGxt+vf4rIiixMBbhKEPjcxEPAa2LTzex2IsTZR+QVG9uDnqC WcgaOEQ58fzXNvNhtwwF/Rgio2XWAJVdmFWS59/k9W58CIUSNKBMZh2XeGdEmtHvDtCxW3z6FJha 36RzOM3fMNNiAGdFZJA84gcdloJR+sHCDTTPT3784fjr+V8An7sI581NGFzkRQqPvEQCZbUAEQEA AbQSdGhpZXZvbEBwb3N0ZW8ubmV0iQHOBBMBCgA4AhsDBQsJCAcCBhUKCQgLAgQWAgMBAh4BAheA FiEEI9twfRN7r3nig/xwDsVtFB0W75MFAmL3HCoACgkQDsVtFB0W75OVEAv/f6XxmtIFz08fUb8h Bp/zJP6IC4/rhhh+0GMRIRzLN8DK0jV8JCzYdFHiRJOy2lNIOpmrrCmjRRxferc2G42+ePFIsslx hU46VSz1Z83NwIG3mpdYNV5WUTUdgzxExHTNTFCd7NKv0nlHKQa OpenPGP: url=https://posteo.de/keys/thievol@posteo.net.asc; preference=encrypt X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: "bug-gnu-emacs" Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:246798 Archived-At: --=-=-= Content-Type: text/plain Content-Transfer-Encoding: quoted-printable For people using dired-async.el (from emacs-async package) here how to fix this bug temporarily until fixed: https://github.com/jwiegley/emacs-async/issues/158 Eli Zaretskii writes: > merge 58919 58918 > thanks > >> From: Thierry Volpiatto >> Date: Mon, 31 Oct 2022 08:54:28 +0000 >>=20 >>=20 >> This is a followup of this report on reddit: >> https://www.reddit.com/r/emacs/comments/yha104/merging_directories_in_di= red_am_i_doing_it_wrong/ > > Which was already reported as bug#58918... > >> When using dired-copy to copy a directory to another directory >> containing a directory with the same name overwriting fails. >> e.g. copy ~/tmp/test/foo/ to ~/tmp/test1/ fails when test1 contain foo/ >>=20 >> The bug is IMHO in copy-directory 3th clause of this cond: >>=20 >> (cond ((not (directory-name-p newname)) >> ;; If NEWNAME is not a directory name, create it; >> ;; that is where we will copy the files of DIRECTORY. >> (make-directory newname parents)) >> ;; NEWNAME is a directory name. If COPY-CONTENTS is non-nil, >> ;; create NEWNAME if it is not already a directory; >> ;; otherwise, create NEWNAME/[DIRECTORY-BASENAME]. >> ((if copy-contents >> (or parents (not (file-directory-p newname))) >> (setq newname (concat newname >> (file-name-nondirectory directory)))) >> (make-directory (directory-file-name newname) parents)) >> (t (setq follow t))) >>=20 >> This change was introduced here: >>=20 >> commit 047f02f00f602b9aef63ae8938e12f3f0ab481eb >> Author: Paul Eggert >> Date: Wed Sep 20 11:49:12 2017 -0700 >>=20 >> Fix new copy-directory bug with empty dirs >>=20=20=20=20=20 >> Problem reported by Afdam Plaice (Bug#28520) and by Eli Zaretskii >> (Bug#28483#34). This is another bug that I introduced in my >> recent copy-directory changes. >> * lisp/files.el (copy-directory): Work with empty subdirectories, to= o. >> * test/lisp/files-tests.el (files-tests--copy-directory): >> Test for this bug. >>=20 >> Reverting this change fix the bug. > > Paul, could you please look into this? > > I think this also affects bug#58721. > > Thanks. =2D-=20 Thierry --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQHHBAEBCgAxFiEEI9twfRN7r3nig/xwDsVtFB0W75MFAmNhXlkTHHRoaWV2b2xA cG9zdGVvLm5ldAAKCRAOxW0UHRbvkyzLC/938kWKAx64b0qewrs2OLZNWQLQ0GGt 5FdPsf4AC0+IT/MH68nmD94AjHyA/qNveisbAI6O7JtO8AirboCU+K8Joe7D+ehs dFJ+esl54e/R4r9yvuFHCcZe1w2yzPlzAxKwlJ6sGQ7swjoH2huo5GrlLR3juBCK M9/XnJihCr5qlKowuzIXJ2NnNFyOCMR2r/iuALI00IFcdr6nAt5fWkwgcMaio7Ik pW0DOUbOZRPzklZJtmOKaeC3BWYYf2KZRa35bE1y5uU/x/bOWdlLEachgOulMD2T 1JgEaxvv4E3zPZeD8lhMPZD1UqUqm6+NC9ztBz/LNYeX4cUijsbMlILPRu5PuypG YpPAnRQO4TNhJBrs+9GmkXrV9KAq9f5rpZZATBSqJIpzXw798IN01jWN0hF8bYDV w+vXNwe1UfPXBIWQz02c+N6IcSnGf19Ds+50OmDB7zlhnnGubtBlPRqudWbsblKz P8a4cR1TXADRA6kkjrWVfCdDoLtpt4yxA60= =Sd7F -----END PGP SIGNATURE----- --=-=-=--