From unknown Sun Jun 22 07:58:43 2025 X-Loop: help-debbugs@gnu.org Subject: bug#54838: 28.1; Buffers are not updated when a directory is renamed in dired Resent-From: Nicolas Martyanoff Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 10 Apr 2022 15:26:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 54838 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 54838@debbugs.gnu.org X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.164960434623552 (code B ref -1); Sun, 10 Apr 2022 15:26:01 +0000 Received: (at submit) by debbugs.gnu.org; 10 Apr 2022 15:25:46 +0000 Received: from localhost ([127.0.0.1]:41070 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ndZRi-00067o-Gv for submit@debbugs.gnu.org; Sun, 10 Apr 2022 11:25:46 -0400 Received: from lists.gnu.org ([209.51.188.17]:57662) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ndZRg-00067d-JX for submit@debbugs.gnu.org; Sun, 10 Apr 2022 11:25:44 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:56224) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ndZRg-0000oR-Ei for bug-gnu-emacs@gnu.org; Sun, 10 Apr 2022 11:25:44 -0400 Received: from mail-wr1-x432.google.com ([2a00:1450:4864:20::432]:37754) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1ndZRe-0002AL-U2 for bug-gnu-emacs@gnu.org; Sun, 10 Apr 2022 11:25:44 -0400 Received: by mail-wr1-x432.google.com with SMTP id t1so1835181wra.4 for ; Sun, 10 Apr 2022 08:25:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:subject:date:message-id:user-agent:mime-version; bh=xCMz83GEhl2ag1mvNU5N5ZCtr9MgDYa5mP8UnIw2Jl0=; b=bN96ZBmjY936WgZfUvqiTVoGhQY1FXHjMv9VL6aIprTdux3l3ryqU3aZpodssxIhF4 VsHdwWfY/VN7BdkxbnAPlGjAvFOZ5WMEi9MbTTJZXtMxQHUUC1TWbqY20J0pE78cTSzp DD8wSG7+EOpd77MD2WBH9xR++n2H8yZ7Dgr6ytFPjS74rTnwciCdFh5wGKtgVw9qvexA 5VkCrJ5kdhP2O1Vi+G/B/dXgvsAChEfrV0dYXOCaClRq21M2ZgNjvYuh6rU6EU6b3ZNr P/WlEH6Bi3bgTvtRwhWehzGn9VwsA7H6IMtASivEF5UsYzSc4L6jgf6nrFeiYJJdn0d2 rMjA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:subject:date:message-id:user-agent :mime-version; bh=xCMz83GEhl2ag1mvNU5N5ZCtr9MgDYa5mP8UnIw2Jl0=; b=dQEH9wFNruN4jP9L9A8Bw91VmOa/4Hdah1ecsou/MN8jz8GezT0YtSbRqUoI5JQxdT 6Wb+FlvKDL1hH9WyJmxWl3qytCyV64obMA88XjhZfJE+J2xW+Qm3U9BpEYlmvHJJ6oXX pg0MaclOTkXh3icG+3feDnECUWKJF/tD+VKBF1cvSMJyr/iDkGY8stWC1VMGYz35mOYg 1+Ji5nGTjdgjUmAa0xlk4sKaDL+qMxCOKFENih6XYYwcDRN8nFRxzA5m2gpNrIaVHdnZ w9zfqqyckhaajpSukeY4Titg0hjMJfuV882/mqWgRWPAavZYOaXXpgfSR7MHp0BkqRSz nhxQ== X-Gm-Message-State: AOAM531f0cdfKBXPPrzYkg6xxDxz0Robe3DRe+FcJw0V2q1Rkf7RreKD H/3bN6l+8tTOt/3QXzf3E00RVk9zePhYZw== X-Google-Smtp-Source: ABdhPJy0csuYTugO2V4eFiigSU92lcjkwkJPRmWMhcOqys/YQngdEQc0Mm5PneP9RjRPdz4lg8/y0Q== X-Received: by 2002:adf:bc0d:0:b0:206:14a6:817f with SMTP id s13-20020adfbc0d000000b0020614a6817fmr22028889wrg.136.1649604341015; Sun, 10 Apr 2022 08:25:41 -0700 (PDT) Received: from valhala (2a01cb0405243e00927ff8b354d83417.ipv6.abo.wanadoo.fr. [2a01:cb04:524:3e00:927f:f8b3:54d8:3417]) by smtp.gmail.com with ESMTPSA id k129-20020a1ca187000000b0038e6e789f08sm15197892wme.39.2022.04.10.08.25.40 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 10 Apr 2022 08:25:40 -0700 (PDT) From: Nicolas Martyanoff Date: Sun, 10 Apr 2022 17:25:40 +0200 Message-ID: <87ilrh55aj.fsf@valhala.localdomain> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=2a00:1450:4864:20::432; envelope-from=khaelin@gmail.com; helo=mail-wr1-x432.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) Hi, Following an update from 27.2 to 28.1, when a directory is renamed in dired, buffers visiting files located in this directory are not updated to visit the file at its new location. To reproduce the problem in emacs -Q: - C-x C-f /tmp/dir1/file - C-x C-s Answer 'y' to the prompt to create the directory. At this point the buffer 'file' visits /tmp/dir1/file, and the file exists on the disk. - Run dired in /tmp. - Rename /tmp/dir1 into /tmp/dir2, e.g. using 'R'. - Switch to the 'file' buffer. It still visits /tmp/dir1/file even though the file is now located in /tmp/dir2. -- Nicolas Martyanoff http://snowsyn.net khaelin@gmail.com From unknown Sun Jun 22 07:58:43 2025 X-Loop: help-debbugs@gnu.org Subject: bug#54838: 28.1; Buffers are not updated when a directory is renamed in dired Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 10 Apr 2022 17:15:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 54838 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Nicolas Martyanoff , Tassilo Horn Cc: 54838@debbugs.gnu.org Received: via spool by 54838-submit@debbugs.gnu.org id=B54838.16496108812554 (code B ref 54838); Sun, 10 Apr 2022 17:15:02 +0000 Received: (at 54838) by debbugs.gnu.org; 10 Apr 2022 17:14:41 +0000 Received: from localhost ([127.0.0.1]:41312 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ndb97-0000f8-4v for submit@debbugs.gnu.org; Sun, 10 Apr 2022 13:14:41 -0400 Received: from eggs.gnu.org ([209.51.188.92]:49106) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ndb95-0000es-UY for 54838@debbugs.gnu.org; Sun, 10 Apr 2022 13:14:40 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:45664) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ndb90-00009J-JH; Sun, 10 Apr 2022 13:14:34 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=DVHoiubjWpmPhUtiqCKKKkx+7HjTyXriYzsWBhdGnPk=; b=GsOVMikEE4j+ H3aLidH5OEB2rrgl6NHlrIQWk4cb5R9WrJiZVJC2U4UUHFR1FkJK+w9KPQvoABuDva+azn4cH6/QA 4uUFOg/jQ8KJBykpuADsnKJAUyEwnoGM6c677WgU78SxIVfhCW1iFBXwzAL/VD8WWIkw4D7tE3CPG Cs/oM4ZoxShU94c23TqD9xsiushrMg9it8Ev0eNyvJrmLkcTinL4ZbcpI4ej100F/uM1Ct4gszYzi 0/OUaf9l+4ImCmwJdQKFDjlXvGnePiygV/vFmv8V860n2n3xW8HFIpkqccJiebX0r5tugxg/c5cmc 9PI5nuhKzeUlbnRs7mEhoA==; Received: from [87.69.77.57] (port=4207 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ndb8z-0004Ki-Ui; Sun, 10 Apr 2022 13:14:34 -0400 Date: Sun, 10 Apr 2022 20:14:33 +0300 Message-Id: <838rsc7tdy.fsf@gnu.org> From: Eli Zaretskii In-Reply-To: <87ilrh55aj.fsf@valhala.localdomain> (message from Nicolas Martyanoff on Sun, 10 Apr 2022 17:25:40 +0200) References: <87ilrh55aj.fsf@valhala.localdomain> X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Nicolas Martyanoff > Date: Sun, 10 Apr 2022 17:25:40 +0200 > > - C-x C-f /tmp/dir1/file > > - C-x C-s > Answer 'y' to the prompt to create the directory. At this point the > buffer 'file' visits /tmp/dir1/file, and the file exists on the disk. > > - Run dired in /tmp. > > - Rename /tmp/dir1 into /tmp/dir2, e.g. using 'R'. > > - Switch to the 'file' buffer. It still visits /tmp/dir1/file even > though the file is now located in /tmp/dir2. Please try the patch below and see if it solves the problem, including in other similar use cases. Tassilo, part of this bug is yet another fallout from replacing dired-in-this-tree-p with file-in-directory-p: the latter returns nil if its second arg doesn't exist, and in this scenario we are dealing with a directory that was already renamed to the new name. Do you agree with my proposed solution for that below? I intend to install it on the release branch, as this is a regression from Emacs 27. Thanks. diff --git a/lisp/dired-aux.el b/lisp/dired-aux.el index 15f95eb..fc50cce 100644 --- a/lisp/dired-aux.el +++ b/lisp/dired-aux.el @@ -1838,22 +1838,23 @@ dired-rename-file "Rename FILE to NEWNAME. Signal a `file-already-exists' error if a file NEWNAME already exists unless OK-IF-ALREADY-EXISTS is non-nil." - (dired-handle-overwrite newname) - (dired-maybe-create-dirs (file-name-directory newname)) - (if (and dired-vc-rename-file - (vc-backend file) - (ignore-errors (vc-responsible-backend newname))) - (vc-rename-file file newname) - ;; error is caught in -create-files - (rename-file file newname ok-if-already-exists)) - ;; Silently rename the visited file of any buffer visiting this file. - (and (get-file-buffer file) - (with-current-buffer (get-file-buffer file) - (set-visited-file-name newname nil t))) - (dired-remove-file file) - ;; See if it's an inserted subdir, and rename that, too. - (when (file-directory-p file) - (dired-rename-subdir file newname))) + (let ((file-is-dir-p (file-directory-p file))) + (dired-handle-overwrite newname) + (dired-maybe-create-dirs (file-name-directory newname)) + (if (and dired-vc-rename-file + (vc-backend file) + (ignore-errors (vc-responsible-backend newname))) + (vc-rename-file file newname) + ;; error is caught in -create-files + (rename-file file newname ok-if-already-exists)) + ;; Silently rename the visited file of any buffer visiting this file. + (and (get-file-buffer file) + (with-current-buffer (get-file-buffer file) + (set-visited-file-name newname nil t))) + (dired-remove-file file) + ;; See if it's an inserted subdir, and rename that, too. + (when file-is-dir-p + (dired-rename-subdir file newname)))) (defun dired-rename-subdir (from-dir to-dir) (setq from-dir (file-name-as-directory from-dir) @@ -1866,7 +1867,13 @@ dired-rename-subdir (while blist (with-current-buffer (car blist) (if (and buffer-file-name - (file-in-directory-p buffer-file-name expanded-from-dir)) + ;; If FROM-DIR was renamed/removed, fall back to + ;; 'dired-in-this-tree-p', since + ;; 'file-in-directory-p' will punt. + (or (and (file-exists-p expanded-from-dir) + (file-in-directory-p buffer-file-name + expanded-from-dir)) + (dired-in-this-tree-p buffer-file-name expanded-from-dir))) (let ((modflag (buffer-modified-p)) (to-file (replace-regexp-in-string (concat "^" (regexp-quote from-dir)) @@ -1885,7 +1892,8 @@ dired-rename-subdir-1 (while alist (setq elt (car alist) alist (cdr alist)) - (if (file-in-directory-p (car elt) expanded-dir) + (if (or (file-in-directory-p (car elt) expanded-dir) + (dired-in-this-tree-p (car elt) expanded-dir)) ;; ELT's subdir is affected by the rename (dired-rename-subdir-2 elt dir to))) (if (equal dir default-directory) From unknown Sun Jun 22 07:58:43 2025 X-Loop: help-debbugs@gnu.org Subject: bug#54838: 28.1; Buffers are not updated when a directory is renamed in dired Resent-From: Tassilo Horn Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 10 Apr 2022 17:31:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 54838 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Eli Zaretskii Cc: Nicolas Martyanoff , 54838@debbugs.gnu.org Received: via spool by 54838-submit@debbugs.gnu.org id=B54838.16496118054374 (code B ref 54838); Sun, 10 Apr 2022 17:31:02 +0000 Received: (at 54838) by debbugs.gnu.org; 10 Apr 2022 17:30:05 +0000 Received: from localhost ([127.0.0.1]:41335 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ndbO0-00018S-EO for submit@debbugs.gnu.org; Sun, 10 Apr 2022 13:30:04 -0400 Received: from eggs.gnu.org ([209.51.188.92]:51218) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ndbNy-00017S-KN for 54838@debbugs.gnu.org; Sun, 10 Apr 2022 13:30:03 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:45754) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ndbNt-0002Np-A6; Sun, 10 Apr 2022 13:29:57 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:In-reply-to:Date:Subject:To:From: References; bh=h44PnlfcPjhFBcRjvB+99wFdoz8vt+Csd0ucFOnSSiA=; b=Z9GBwVVhRDP1pX OgAeaM9grepLPDNaZdqZzNpc1CPIuy3XLoEJp8I6ZH653DpbyUebZdEg9qulxeXic7mLMeYc1BraO Qf0MA9399ayruOMSEXS4RTnY8g1tzZUVvKsB5/saX6zuztQrFKAFIwgnIq91HH+xsY+Zecyxh4f8h fYa0fZ6BHpUupoRF06wH44PJVky4PbEecBP15YgwsaOCn/2IGfxqriivxwwDP8+sTIx7UUjTUCLV+ 3XIrYMfFoCJPcWc4imNuKBH+fvwfz+p2tQH6OaFf8M4mSacGXCJifUQgepp67qc6QpUdJK+YVicyD ij9zFP2euCbx4Maq9JhQ==; Received: from auth1-smtp.messagingengine.com ([66.111.4.227]:44845) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1ndbNs-0002ob-SS; Sun, 10 Apr 2022 13:29:56 -0400 Received: from compute2.internal (compute2.nyi.internal [10.202.2.46]) by mailauth.nyi.internal (Postfix) with ESMTP id 7540627C0054; Sun, 10 Apr 2022 13:29:56 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute2.internal (MEProxy); Sun, 10 Apr 2022 13:29:56 -0400 X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvvddrudekgedgudduudcutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpehffgfhvffuffgjkfggtgesthdtredttdertdenucfhrhhomhepvfgrshhs ihhlohcujfhorhhnuceothhsughhsehgnhhurdhorhhgqeenucggtffrrghtthgvrhhnpe evveeikeetkeeviefgfeffiedvteeguddvffeuueduveegtddthedvhfeuveffhfenucev lhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehthhhorhhnod hmvghsmhhtphgruhhthhhpvghrshhonhgrlhhithihqdekieejfeekjeekgedqieefhedv leekqdhtshguhheppehgnhhurdhorhhgsehfrghsthhmrghilhdrfhhm X-ME-Proxy: Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sun, 10 Apr 2022 13:29:55 -0400 (EDT) References: <87ilrh55aj.fsf@valhala.localdomain> <838rsc7tdy.fsf@gnu.org> User-agent: mu4e 1.7.12; emacs 29.0.50 From: Tassilo Horn Date: Sun, 10 Apr 2022 19:19:26 +0200 In-reply-to: <838rsc7tdy.fsf@gnu.org> Message-ID: <878rscetim.fsf@gnu.org> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Eli Zaretskii writes: Hi Eli, > Tassilo, part of this bug is yet another fallout from replacing > dired-in-this-tree-p with file-in-directory-p: the latter returns nil > if its second arg doesn't exist, and in this scenario we are dealing > with a directory that was already renamed to the new name. Do you > agree with my proposed solution for that below? I would just revert back to using dired-in-this-tree-p and never file-in-directory-p in those places. I've done that for many places in 61677ac3e4685d8f81c3b90eb751d9b5e8a3732d, too, because it turned out that the change from dired-in-this-tree-p to file-in-directory-p caused performance problems. The fact that dired-in-this-tree-p works for non-existing files and dired relies on that didn't even occur to me. :-( Bye, Tassilo From unknown Sun Jun 22 07:58:43 2025 X-Loop: help-debbugs@gnu.org Subject: bug#54838: 28.1; Buffers are not updated when a directory is renamed in dired Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 10 Apr 2022 17:39:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 54838 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Tassilo Horn Cc: khaelin@gmail.com, 54838@debbugs.gnu.org Received: via spool by 54838-submit@debbugs.gnu.org id=B54838.16496123215463 (code B ref 54838); Sun, 10 Apr 2022 17:39:01 +0000 Received: (at 54838) by debbugs.gnu.org; 10 Apr 2022 17:38:41 +0000 Received: from localhost ([127.0.0.1]:41353 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ndbWL-0001Q2-0c for submit@debbugs.gnu.org; Sun, 10 Apr 2022 13:38:41 -0400 Received: from eggs.gnu.org ([209.51.188.92]:52586) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ndbWK-0001Po-8Z for 54838@debbugs.gnu.org; Sun, 10 Apr 2022 13:38:40 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:45868) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ndbWE-0003cX-Ny; Sun, 10 Apr 2022 13:38:34 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=8XAD/Il6VA0FgYknrFvwq9AD2MszjiJYMCaihhbJApo=; b=U5D62IoLBe/E ar64DiN8W+dSr94UXqa9Sw7P25W48kW5NDZ61N0jHPweT8daUBWLjCb5nGRkfNbSufZiumv9Uf4jM JR+MuueEHvwqlDzCQ3/K/jrtJJ5ioCNgHV0kHzF0b18nIBErCIR7XXOKKVE9VU5ENAUSGigGCedBl epyYNXp6c2Q+DdPPOkyA4YYXXm02YVm80bhzRgwHf8aae13kK+b23vBdaQoeQXTStJ4oTgyqyWENf AlHLdKfCSn8LG4/X0yI0NdzPxri0UR0I1tMkrbcfCKkUIbAZFokPQ7qOxRMWT9bOv1GBTnhjr6zzs 0ZxofPodFeY047sgLSIu2w==; Received: from [87.69.77.57] (port=1867 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ndbWD-0002VF-N5; Sun, 10 Apr 2022 13:38:34 -0400 Date: Sun, 10 Apr 2022 20:38:34 +0300 Message-Id: <835yng7s9x.fsf@gnu.org> From: Eli Zaretskii In-Reply-To: <878rscetim.fsf@gnu.org> (message from Tassilo Horn on Sun, 10 Apr 2022 19:19:26 +0200) References: <87ilrh55aj.fsf@valhala.localdomain> <838rsc7tdy.fsf@gnu.org> <878rscetim.fsf@gnu.org> X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Tassilo Horn > Cc: Nicolas Martyanoff , 54838@debbugs.gnu.org > Date: Sun, 10 Apr 2022 19:19:26 +0200 > > > Tassilo, part of this bug is yet another fallout from replacing > > dired-in-this-tree-p with file-in-directory-p: the latter returns nil > > if its second arg doesn't exist, and in this scenario we are dealing > > with a directory that was already renamed to the new name. Do you > > agree with my proposed solution for that below? > > I would just revert back to using dired-in-this-tree-p and never > file-in-directory-p in those places. I've done that for many places in > 61677ac3e4685d8f81c3b90eb751d9b5e8a3732d, too, because it turned out > that the change from dired-in-this-tree-p to file-in-directory-p caused > performance problems. Thanks, will do when installing the changes. From unknown Sun Jun 22 07:58:43 2025 X-Loop: help-debbugs@gnu.org Subject: bug#54838: 28.1; Buffers are not updated when a directory is renamed in dired Resent-From: Nicolas Martyanoff Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 11 Apr 2022 08:00:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 54838 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Eli Zaretskii Cc: Nicolas Martyanoff , 54838@debbugs.gnu.org, Tassilo Horn Received: via spool by 54838-submit@debbugs.gnu.org id=B54838.164966395221499 (code B ref 54838); Mon, 11 Apr 2022 08:00:01 +0000 Received: (at 54838) by debbugs.gnu.org; 11 Apr 2022 07:59:12 +0000 Received: from localhost ([127.0.0.1]:42410 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ndox6-0005ah-6M for submit@debbugs.gnu.org; Mon, 11 Apr 2022 03:59:12 -0400 Received: from mail-wr1-f52.google.com ([209.85.221.52]:36498) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ndox4-0005aT-50 for 54838@debbugs.gnu.org; Mon, 11 Apr 2022 03:59:10 -0400 Received: by mail-wr1-f52.google.com with SMTP id u3so21750465wrg.3 for <54838@debbugs.gnu.org>; Mon, 11 Apr 2022 00:59:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=HSQ5ZktfUoIfqlw4jWpmUEEjECcDCNEkvFYmOYnhWEI=; b=CzbEYRepQaSsL21N9iGXdCQD1Ly1Kw8U5J4yDMtRN4uPBy4hBIIjQRkasqsgDi285R cqlNtM/quNYeynwePq95Q6iSjus7KhXUKaid9DWEHM6blP2Y/jkWEJeTNGOJRGPG6mRX ejHh8NVUg7ZVvaCjR/ctqMSN9dV+I835C9qx8NrfpbCTuDo+MQJAAbgk9OMg+Xvm3k5Y YjkdIOKYF1b6AMmb049A6iQlPXzfW3My5r7baMNdkwihT1nAmn3wid3BLsLjMTtAeYAO /mbeYaT9cFhcu0wdyRg4vNi0bLIdFI3JeRFGpQflaUO83fKKUWx62rfkkOFdwVTYaMc9 SWbA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=HSQ5ZktfUoIfqlw4jWpmUEEjECcDCNEkvFYmOYnhWEI=; b=DArOsR0lnMT1itQj2BNbO/aXACTDA4CAK1sSxcV6aQAdNr4DvhcWMIua7znfHXNS37 q/KM/StlgDYzKITSzYnIDyYs+2Kl4RwKl7qY1Sp8A0nlR7u5f0Oe9QYyN5kpoHm+9Wpn JBHFdx4eSYh/p+vhoH9GvQO1pJaqyp5/6bgbOkVSy05Pai4BNdTkFnv2ClJM21bK5PS8 m6M08ZO/VnKfuUnp1TIdifVDW5/Ne945OXO9AO8lephNvcHtMTn0E3hOS4qbwZJa1isu K9F+2zZSQ3ewAzO+eivJblE0QqatnYrfqNyJ/DTnh1LDPSG/avwfSMtQdiC3oqy8nlkQ 19oQ== X-Gm-Message-State: AOAM533pcWktM3uMTBl+cQ6ln05HEmK4rxXOsTbo7/iOjJ6KzzqnJ+pi x/8/8ctx/GF+0PokkMKwf8ELCyASS/CI0WBJ X-Google-Smtp-Source: ABdhPJy3D/UkBbwRsTNofq/qFiz6PzSQ43rPIA2xOtXMT6s4Ncx0hdcEXmt7arwghj6pVVyFZEJ9ow== X-Received: by 2002:a05:6000:3c7:b0:207:8c51:c07b with SMTP id b7-20020a05600003c700b002078c51c07bmr14476495wrg.17.1649663944123; Mon, 11 Apr 2022 00:59:04 -0700 (PDT) Received: from valhala (2a01cb0405243e00927ff8b354d83417.ipv6.abo.wanadoo.fr. [2a01:cb04:524:3e00:927f:f8b3:54d8:3417]) by smtp.gmail.com with ESMTPSA id u12-20020a5d6dac000000b00204119d37d0sm25875083wrs.26.2022.04.11.00.59.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 11 Apr 2022 00:59:03 -0700 (PDT) From: Nicolas Martyanoff References: <87ilrh55aj.fsf@valhala.localdomain> <838rsc7tdy.fsf@gnu.org> Date: Mon, 11 Apr 2022 09:59:03 +0200 In-Reply-To: <838rsc7tdy.fsf@gnu.org> (Eli Zaretskii's message of "Sun, 10 Apr 2022 20:14:33 +0300") Message-ID: <875ynghwzc.fsf@valhala.localdomain> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hi Eli, With your patch applied on HEAD, directory renaming seems to be working correctly (tested with direct children and with nested directories). Thank you so much for such a quick patch! Regards, -- Nicolas Martyanoff http://snowsyn.net khaelin@gmail.com From unknown Sun Jun 22 07:58:43 2025 MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) X-Loop: help-debbugs@gnu.org From: help-debbugs@gnu.org (GNU bug Tracking System) To: Nicolas Martyanoff Subject: bug#54838: closed (Re: bug#54838: 28.1; Buffers are not updated when a directory is renamed in dired) Message-ID: References: <83wnfv6eip.fsf@gnu.org> <87ilrh55aj.fsf@valhala.localdomain> X-Gnu-PR-Message: they-closed 54838 X-Gnu-PR-Package: emacs Reply-To: 54838@debbugs.gnu.org Date: Mon, 11 Apr 2022 11:34:01 +0000 Content-Type: multipart/mixed; boundary="----------=_1649676841-5225-1" This is a multi-part message in MIME format... ------------=_1649676841-5225-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Your bug report #54838: 28.1; Buffers are not updated when a directory is renamed in dired which was filed against the emacs package, has been closed. The explanation is attached below, along with your original report. If you require more details, please reply to 54838@debbugs.gnu.org. --=20 54838: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D54838 GNU Bug Tracking System Contact help-debbugs@gnu.org with problems ------------=_1649676841-5225-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at 54838-done) by debbugs.gnu.org; 11 Apr 2022 11:33:26 +0000 Received: from localhost ([127.0.0.1]:42810 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ndsIQ-0001LQ-18 for submit@debbugs.gnu.org; Mon, 11 Apr 2022 07:33:26 -0400 Received: from eggs.gnu.org ([209.51.188.92]:48746) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ndsIN-0001LA-8l for 54838-done@debbugs.gnu.org; Mon, 11 Apr 2022 07:33:24 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:35488) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ndsIH-0002cg-U0; Mon, 11 Apr 2022 07:33:17 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=3ISz6Xy/nt0wLn0ynf94ZpxfSIF3zK+N/fc6iUfWrpo=; b=XR8Sa7YP+asg utLxQCMe6kGrRalEYLvCht9fcUoy5VbjcnQPokL6GId8ZuSa2Qb3UNISkG1eHBaMCcosBDMKU2/xu REmLkqHc9OohI3pB5h68puczKHDgOTxkPaHFs93lHGwRpYOJai+ZtmEaiTrZPrtY/HqS0IdRPqSGv RTEB2x5JjSrPWtsb2nH+RLDSdH8Ao+cn/kc/wT/4v+l7Rsk04QQglS97FaVK6wqIAymvEQtk2kPO8 852IOcRHtOa4ChHDclwAAr0Mg7DTLva3+QYPOTOUMr2zgZ8J2MBBV0ghu85dyuIXEkKG87b3F1K8A J8S6+Ojk6fUGBxAO5Dbonw==; Received: from [87.69.77.57] (port=4779 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ndsIH-0005Vv-5f; Mon, 11 Apr 2022 07:33:17 -0400 Date: Mon, 11 Apr 2022 14:33:18 +0300 Message-Id: <83wnfv6eip.fsf@gnu.org> From: Eli Zaretskii To: Nicolas Martyanoff In-Reply-To: <875ynghwzc.fsf@valhala.localdomain> (message from Nicolas Martyanoff on Mon, 11 Apr 2022 09:59:03 +0200) Subject: Re: bug#54838: 28.1; Buffers are not updated when a directory is renamed in dired References: <87ilrh55aj.fsf@valhala.localdomain> <838rsc7tdy.fsf@gnu.org> <875ynghwzc.fsf@valhala.localdomain> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 54838-done Cc: 54838-done@debbugs.gnu.org, khaelin@gmail.com, tsdh@gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Nicolas Martyanoff > Cc: Nicolas Martyanoff , Tassilo Horn , > 54838@debbugs.gnu.org > Date: Mon, 11 Apr 2022 09:59:03 +0200 > > With your patch applied on HEAD, directory renaming seems to be working > correctly (tested with direct children and with nested directories). > > Thank you so much for such a quick patch! Thanks for testing. I've now installed the changes on the emacs-28 branch, and they will appear in Emacs 28.2. I'm therefore closing this bug. ------------=_1649676841-5225-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at submit) by debbugs.gnu.org; 10 Apr 2022 15:25:46 +0000 Received: from localhost ([127.0.0.1]:41070 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ndZRi-00067o-Gv for submit@debbugs.gnu.org; Sun, 10 Apr 2022 11:25:46 -0400 Received: from lists.gnu.org ([209.51.188.17]:57662) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ndZRg-00067d-JX for submit@debbugs.gnu.org; Sun, 10 Apr 2022 11:25:44 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:56224) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ndZRg-0000oR-Ei for bug-gnu-emacs@gnu.org; Sun, 10 Apr 2022 11:25:44 -0400 Received: from mail-wr1-x432.google.com ([2a00:1450:4864:20::432]:37754) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1ndZRe-0002AL-U2 for bug-gnu-emacs@gnu.org; Sun, 10 Apr 2022 11:25:44 -0400 Received: by mail-wr1-x432.google.com with SMTP id t1so1835181wra.4 for ; Sun, 10 Apr 2022 08:25:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:subject:date:message-id:user-agent:mime-version; bh=xCMz83GEhl2ag1mvNU5N5ZCtr9MgDYa5mP8UnIw2Jl0=; b=bN96ZBmjY936WgZfUvqiTVoGhQY1FXHjMv9VL6aIprTdux3l3ryqU3aZpodssxIhF4 VsHdwWfY/VN7BdkxbnAPlGjAvFOZ5WMEi9MbTTJZXtMxQHUUC1TWbqY20J0pE78cTSzp DD8wSG7+EOpd77MD2WBH9xR++n2H8yZ7Dgr6ytFPjS74rTnwciCdFh5wGKtgVw9qvexA 5VkCrJ5kdhP2O1Vi+G/B/dXgvsAChEfrV0dYXOCaClRq21M2ZgNjvYuh6rU6EU6b3ZNr P/WlEH6Bi3bgTvtRwhWehzGn9VwsA7H6IMtASivEF5UsYzSc4L6jgf6nrFeiYJJdn0d2 rMjA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:subject:date:message-id:user-agent :mime-version; bh=xCMz83GEhl2ag1mvNU5N5ZCtr9MgDYa5mP8UnIw2Jl0=; b=dQEH9wFNruN4jP9L9A8Bw91VmOa/4Hdah1ecsou/MN8jz8GezT0YtSbRqUoI5JQxdT 6Wb+FlvKDL1hH9WyJmxWl3qytCyV64obMA88XjhZfJE+J2xW+Qm3U9BpEYlmvHJJ6oXX pg0MaclOTkXh3icG+3feDnECUWKJF/tD+VKBF1cvSMJyr/iDkGY8stWC1VMGYz35mOYg 1+Ji5nGTjdgjUmAa0xlk4sKaDL+qMxCOKFENih6XYYwcDRN8nFRxzA5m2gpNrIaVHdnZ w9zfqqyckhaajpSukeY4Titg0hjMJfuV882/mqWgRWPAavZYOaXXpgfSR7MHp0BkqRSz nhxQ== X-Gm-Message-State: AOAM531f0cdfKBXPPrzYkg6xxDxz0Robe3DRe+FcJw0V2q1Rkf7RreKD H/3bN6l+8tTOt/3QXzf3E00RVk9zePhYZw== X-Google-Smtp-Source: ABdhPJy0csuYTugO2V4eFiigSU92lcjkwkJPRmWMhcOqys/YQngdEQc0Mm5PneP9RjRPdz4lg8/y0Q== X-Received: by 2002:adf:bc0d:0:b0:206:14a6:817f with SMTP id s13-20020adfbc0d000000b0020614a6817fmr22028889wrg.136.1649604341015; Sun, 10 Apr 2022 08:25:41 -0700 (PDT) Received: from valhala (2a01cb0405243e00927ff8b354d83417.ipv6.abo.wanadoo.fr. [2a01:cb04:524:3e00:927f:f8b3:54d8:3417]) by smtp.gmail.com with ESMTPSA id k129-20020a1ca187000000b0038e6e789f08sm15197892wme.39.2022.04.10.08.25.40 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 10 Apr 2022 08:25:40 -0700 (PDT) From: Nicolas Martyanoff To: bug-gnu-emacs@gnu.org Subject: 28.1; Buffers are not updated when a directory is renamed in dired Date: Sun, 10 Apr 2022 17:25:40 +0200 Message-ID: <87ilrh55aj.fsf@valhala.localdomain> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=2a00:1450:4864:20::432; envelope-from=khaelin@gmail.com; helo=mail-wr1-x432.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) Hi, Following an update from 27.2 to 28.1, when a directory is renamed in dired, buffers visiting files located in this directory are not updated to visit the file at its new location. To reproduce the problem in emacs -Q: - C-x C-f /tmp/dir1/file - C-x C-s Answer 'y' to the prompt to create the directory. At this point the buffer 'file' visits /tmp/dir1/file, and the file exists on the disk. - Run dired in /tmp. - Rename /tmp/dir1 into /tmp/dir2, e.g. using 'R'. - Switch to the 'file' buffer. It still visits /tmp/dir1/file even though the file is now located in /tmp/dir2. -- Nicolas Martyanoff http://snowsyn.net khaelin@gmail.com ------------=_1649676841-5225-1--