From unknown Tue Jun 24 17:23:43 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#48805 <48805@debbugs.gnu.org> To: bug#48805 <48805@debbugs.gnu.org> Subject: Status: 27.2; dired-mode moves point to wrong positions while deleting non-empty directories Reply-To: bug#48805 <48805@debbugs.gnu.org> Date: Wed, 25 Jun 2025 00:23:43 +0000 retitle 48805 27.2; dired-mode moves point to wrong positions while deletin= g non-empty directories reassign 48805 emacs submitter 48805 ynyaaa@gmail.com severity 48805 normal thanks From debbugs-submit-bounces@debbugs.gnu.org Thu Jun 03 03:20:39 2021 Received: (at submit) by debbugs.gnu.org; 3 Jun 2021 07:20:39 +0000 Received: from localhost ([127.0.0.1]:41968 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1loheg-0007Lb-Ku for submit@debbugs.gnu.org; Thu, 03 Jun 2021 03:20:38 -0400 Received: from lists.gnu.org ([209.51.188.17]:48098) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lohef-0007LV-Vb for submit@debbugs.gnu.org; Thu, 03 Jun 2021 03:20:38 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:55572) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lohef-00034t-JZ for bug-gnu-emacs@gnu.org; Thu, 03 Jun 2021 03:20:37 -0400 Received: from mail-pg1-x52f.google.com ([2607:f8b0:4864:20::52f]:39906) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1lohed-00010h-HE for bug-gnu-emacs@gnu.org; Thu, 03 Jun 2021 03:20:37 -0400 Received: by mail-pg1-x52f.google.com with SMTP id v14so4442714pgi.6 for ; Thu, 03 Jun 2021 00:20:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:date:message-id:mime-version; bh=H3vmNxyDiulU2BchRWhNDp5iudFY7/wXnCxpOOLpDwM=; b=iAqx5v9IudGxml4msvxPrA7ghg8jCKRDwlS0ZuXdzYFizz3KQfrfphd/k7a+STMnuD 0QhUPI+n6dEjL4FUqTPtPj0NjjnsyZ1ctskwQqSPQqw9UstJSpvlR9lVA/lIRYv7oBRn EuJIVa04/LIkVlzNr7tV9MEjoGF3nKOyZqA5YN6L7GFZUJkeUh857FdImTZB8qzOZ2/5 w2W2Ww27fKBK6ioyo5BYIlLq+n1ipfjafGNamuVcIuBnprPFVAdzNybBq4Z2aMRiEVnS +3MGMs9K/Z1C8BXfnWRH5lfpZw+IR1dXiIDlF7MHsMFAysfLm4FgowqPWOkruSAQdtnR rfew== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:mime-version; bh=H3vmNxyDiulU2BchRWhNDp5iudFY7/wXnCxpOOLpDwM=; b=q4CgIzASNi5fPFTyBBBRFEXkQnhEV/ehWmX9X/A6jK6bY4pTTVaZUozuT4AD8jP22V Oj5SGz9eGcOwwnP3tkKTA/vmVGkKGsK6/XXHHZBeWEViUsx0ONkdj+e/5Jo0d1CBPVIs 7Jr7iwdQawfXDLVnePOdZ5yiCTuNPoPNbinjTRPPSfZd4F/sm5PFnQQsB1vATFhNdeOo z0600nOs0VMJTcaKWzzmDk06aeu14q0apI1UKVN5+OL3/IZ+b3JjTAnGwc4ruVH8SHm3 XOrrz9i+t2nzjkvahCDtslW6toOhpO+rUVG0FcrD0SlwzmeWvOnNwTG6xCOfJoDy7fRC hjpg== X-Gm-Message-State: AOAM530rh+/kdqijGKQMR5YiDrg/EN5ii3ctK4z7zb9MOizcpxQ0fe1A IVe9GUwKG5wSKlUWrTIP1as1FzH0cVA= X-Google-Smtp-Source: ABdhPJyId1sQ/hWsXoofSIkjGHjdFev/voV/gE/Z1ZKCNEtRFrC9HITA+vb/LTtu+txIw6M97AHdUA== X-Received: by 2002:a63:6f8e:: with SMTP id k136mr38813626pgc.326.1622704832522; Thu, 03 Jun 2021 00:20:32 -0700 (PDT) Received: from HP (east42-p109.eaccess.hi-ho.ne.jp. [219.121.173.110]) by smtp.gmail.com with ESMTPSA id d8sm392279pfq.198.2021.06.03.00.20.31 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 03 Jun 2021 00:20:32 -0700 (PDT) From: ynyaaa@gmail.com To: bug-gnu-emacs@gnu.org Subject: 27.2; dired-mode moves point to wrong positions while deleting non-empty directories Date: Thu, 03 Jun 2021 16:20:24 +0900 Message-ID: <868s3rv2h3.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=2607:f8b0:4864:20::52f; envelope-from=ynyaaa@gmail.com; helo=mail-pg1-x52f.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 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 (--) The form below creates a working directory and generate many non-empty directories under the working directory, then displaye the working directory in a dired-mode buffer. (let ((dir (make-temp-file "dir" t))) (dotimes (i 100) (let ((d (expand-file-name (format "d%03d" i) dir))) (make-directory d) (write-region "" nil (expand-file-name "file" d)) )) (dired dir)) Mark all subdirectories to be deleted with typing 'C-u 100 d'. Tell emacs to delete all marked directories with typing 'x'. Emacs asks 'Delete D [100 files] (yes or no) ', and answer yes. Then emacs asks like 'Recursively delete d000? (yes, no, all, quit, help) ' for each directory, and answer yes for each confirmation. While these confirmations, emacs tries to move point to the 'D' marker of the line of the asked directory. But the real position of the point is different from the line. Perhaps because the goal point value is changed with the deletion of the lines of the directories which has been deleted. Also, I think the point should be moved to the directory name, not marker. Directory names are much more important than marker types and there is a long distance between the marker and the name. In GNU Emacs 27.2 (build 1, x86_64-w64-mingw32) of 2021-03-26 built on CIRROCUMULUS Repository revision: deef5efafb70f4b171265b896505b92b6eef24e6 Repository branch: HEAD Windowing system distributor 'Microsoft Corp.', version 10.0.19043 System Description: Microsoft Windows 10 Pro (v10.0.2009.19043.1023) Recent messages: Configured using: 'configure --without-dbus --host=x86_64-w64-mingw32 --without-compress-install 'CFLAGS=-O2 -static'' Configured features: XPM JPEG TIFF GIF PNG RSVG SOUND NOTIFY W32NOTIFY ACL GNUTLS LIBXML2 HARFBUZZ ZLIB TOOLKIT_SCROLL_BARS MODULES THREADS JSON PDUMPER LCMS2 GMP Important settings: value of $LANG: JPN locale-coding-system: cp932 Major mode: Emacs-Lisp Minor modes in effect: tooltip-mode: t global-eldoc-mode: t eldoc-mode: t electric-indent-mode: t mouse-wheel-mode: t tool-bar-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t line-number-mode: t transient-mark-mode: t Load-path shadows: None found. Features: (shadow sort mail-extr term/bobcat emacsbug message rmc puny format-spec rfc822 mml mml-sec password-cache epa derived epg epg-config gnus-util rmail rmail-loaddefs text-property-search mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils dired dired-loaddefs cl-print debug backtrace find-func mule-util info apropos goto-addr thingatpt noutline outline easy-mmode view misearch multi-isearch cl-extra seq byte-opt gv bytecomp byte-compile cconv help-fns radix-tree help-mode easymenu time-date subr-x cl-loaddefs cl-lib japan-util tooltip eldoc electric uniquify ediff-hook vc-hooks lisp-float-type mwheel dos-w32 ls-lisp disp-table term/w32-win w32-win w32-vars term/common-win tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode elisp-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core term/tty-colors frame minibuffer cl-generic cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese composite charscript charprop case-table epa-hook jka-cmpr-hook help simple abbrev obarray cl-preloaded nadvice loaddefs button faces cus-face macroexp files text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote threads w32notify w32 lcms2 multi-tty make-network-process emacs) Memory information: ((conses 16 73546 10832) (symbols 48 8298 1) (strings 32 24697 1901) (string-bytes 1 692843) (vectors 16 13822) (vector-slots 8 265412 15684) (floats 8 37 270) (intervals 56 1015 643) (buffers 1000 17)) From debbugs-submit-bounces@debbugs.gnu.org Thu Jun 03 17:52:50 2021 Received: (at 48805) by debbugs.gnu.org; 3 Jun 2021 21:52:50 +0000 Received: from localhost ([127.0.0.1]:44955 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lovGk-0006s4-De for submit@debbugs.gnu.org; Thu, 03 Jun 2021 17:52:50 -0400 Received: from mout.gmx.net ([212.227.15.15]:42525) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lovGi-0006rr-LQ for 48805@debbugs.gnu.org; Thu, 03 Jun 2021 17:52:49 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1622757161; bh=+lwNHYkCF5vrXGDZ7me/C2aFJCFRHF6Vbo0B0Kmwq6A=; h=X-UI-Sender-Class:From:To:Cc:Subject:References:Date:In-Reply-To; b=EtySgup+ynn6rbI1cTnPtkwP/kWl52b0znSzrMiSuqSw1Dhtm9AsQtgL5it6mONSF eQP2/knR4Cbx6xcxwhI9XUnCQz59Nz9r40R8YltmmIIRR4cCGnId/DYk6I7pbSY0Cx T4+DmOzO6f8Bt5U6g+wy94BhhY0PFdc7oxx79/rA= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from strobe-jhalfs ([94.220.124.191]) by mail.gmx.net (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MyKDe-1lRtjx223g-00yeM5; Thu, 03 Jun 2021 23:52:41 +0200 From: Stephen Berman To: ynyaaa@gmail.com Subject: Re: bug#48805: 27.2; dired-mode moves point to wrong positions while deleting non-empty directories References: <868s3rv2h3.fsf@gmail.com> Date: Thu, 03 Jun 2021 23:52:40 +0200 In-Reply-To: <868s3rv2h3.fsf@gmail.com> (ynyaaa@gmail.com's message of "Thu, 03 Jun 2021 16:20:24 +0900") Message-ID: <875yyuipjr.fsf@gmx.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Provags-ID: V03:K1:LsjdxAaHrkiz7u6x2BBGHyoUoJKRVQ/Aujoo/GTs9z/z3vS3dsQ VBRQ1X7veSuNMo8N6Z7gxxPBV6Bcqf4pJNhPlo/3fncfaRaljWdMreioSeytzKuIQJdY5VU qUw6ZH9URGk8FRV/MJH0GPCXI9livLBeoNc63TSttzHcur0O6IGMrzKbIzd74vIDLRTJMX/ lQtJRTjLPmgVlznV/vrdw== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:CawLzskPW3k=:CeTEAXWryNngsYoqGLj0l9 IlYgEssNvplluqyYoJ/VP9cS/QCp0zCWPHVoMKtKh2DMd5ZCZ9hhyRvVZsqFFqi0LAX1k/gCf BCO/0wxNcLp3v1c6PpvUD/DkCTkvQaRTUE71jQA2Q7lhId+W7d5cnuEhiReHm7sCyiQsUNp89 GXUHqjqt2GomngPegpeGPe2haJ139zyLlzipFRiWGT1m+Ww+R97FDd7HEjcIXh4wi0hA7UONj 8Zo0IhtaD9fVrOpv/jRU3xr48DvmMHPd9u6JgrvCZL8DpGf01UZ+1EMvMR7fZMSSEX4Xxd3TD wtqeMl2ygzn6G1nVMUoWNW0PPWHsWKIqubA4M8EMcqSK+k87q21ONUK5yDlT2dAaH5KrR8fpf FHdS6JvWaDdEVrCMh1jbaG0/tdc3FwtUT7MtKTVYhO1DXC27HqIlFGCFGsHCrt2i8zEKl3ymO HfS6/F0H7L9a/9Npqyy7Ke00aMMzH+lIIrtJE1Yl5uXpNgqAhtWZnkil3nqs1z/KzeSyVB+wO Anbzjx/kS1QdIyBpztLNALYFZwRZMmCyALO7JVye3/O0XCDsUp3Xdc1rwi8o2MJTVhD0//9nI gf1gi/Kh/Wvc9dMaJLNR3PRbneq6rlUnd5GqXkuP557Lx917M5QlmkFReFBnoT6hU7X5OT7+8 LB5xXspY90QdmWJX08XX9+xvxo6M42m5Co+xxLu8YbsOYAwsGn84ZiJGp5wfah1k/BG9ovCLG 0m5z4JwN7EJuMrpuGn7rG+gR4xPJNuEJP6RtLr3gvHDtInnc5WGg60c4wt/IsN7RFH2niLF0w hD4Q2U553VeyP/8c7yvexy1iK2imbphbyeCzz39DMHnGqUxlj7aQlUfw7MS/xeQATGPh6Mw3V iyQjQtqVk50UxINYqDfkNY22Z2L9zOfwHhD1S1YA+B3rIgesiytrp5vHVntj9iPBaNex0K3Kl 3ioJ70mQUw/jDFasj9sP1hufj+wy4lhtVWA4TshgwXQs8uUXZ+KSHek87gim6af31nIJmGiVd R8wbnyo+LRI9uibyzTxAle79Kd/4+vN3JB8K1zvsdiVYCZxyPSKUdF/lq11osoBRF4sOvK5of /qQIoRxOlmts4i5tHrkA8TmuEGL9wEVQApxSSGJZEIapaQvQcfv1mz6EA== X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 48805 Cc: 48805@debbugs.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: -1.0 (-) --=-=-= Content-Type: text/plain Content-Transfer-Encoding: quoted-printable On Thu, 03 Jun 2021 16:20:24 +0900 ynyaaa@gmail.com wrote: > The form below creates a working directory and generate many non-empty > directories under the working directory, then displaye the working > directory in a dired-mode buffer. > (let ((dir (make-temp-file "dir" t))) > (dotimes (i 100) > (let ((d (expand-file-name (format "d%03d" i) dir))) > (make-directory d) > (write-region "" nil (expand-file-name "file" d)) > )) > (dired dir)) > Mark all subdirectories to be deleted with typing 'C-u 100 d'. > Tell emacs to delete all marked directories with typing 'x'. > Emacs asks 'Delete D [100 files] (yes or no) ', and answer yes. > Then emacs asks like 'Recursively delete d000? (yes, no, all, quit, help= ) ' > for each directory, and answer yes for each confirmation. > While these confirmations, emacs tries to move point to the 'D' marker o= f > the line of the asked directory. > But the real position of the point is different from the line. > Perhaps because the goal point value is changed with the deletion of the > lines of the directories which has been deleted. This bug was introduced by this commit: commit 9ecbdeeaa845a75c63210057a8a554eedc9387bf Author: Tino Calancha Commit: Tino Calancha CommitDate: Wed Aug 9 14:37:21 2017 +0900 Ask files for deletion in buffer order: top first, botton later * lisp/dired.el (dired-do-flagged-delete, dired-do-delete): Call `nreverse' t invert the output of `dired-map-over-marks'. In effect, this countermanded the requirement stated by this comment in dired-internal-do-deletions: ;; L is an alist of files to delete, with their buffer positions. [...] ;; (car L) *must* be the *last* (bottommost) file in the dired buffer. ;; That way as changes are made in the buffer they do not shift the ;; lines still to be changed, so the (point) values in L stay valid. ;; Also, for subdirs in natural order, a subdir's files are deleted ;; before the subdir itself - the other way around would not work. However, the last sentence of this comment was made obsolete by commit f06280268, which allows deleting non-empty directories. And since the motivation for commit 9ecbdeeaa seems reasonable, it seems best not to rely on buffer positions but instead to use markers. The attached patch does this, and that fixes the bug reported above AFAICT. (If an accumulation of markers is not a concern here, the patch could be simplified.) (Commit a84c3810b, which fixed another regression due to commit 9ecbdeeaa but did not address the problem reported in this bug, is left intact by the patch.) > Also, I think the point should be moved to the directory name, not marke= r. > Directory names are much more important than marker types and there is a > long distance between the marker and the name. That seems like a reasonable request, and the attached patch implements it too. (A further development of this could be to highlight the file name when prompting for whether to delete it, making it even more obvious which file is meant. But maybe that's overengineering.) 2021-06-03 Stephen Berman Fix placement of point in Dired deletion operations (bug#48805) * lisp/dired.el (dired-do-flagged-delete, dired-do-delete): Use point-marker instead of point to record each file name position. Clean up the markers before returning. (dired-internal-do-deletions): Move to the file name marker, and then move point to the file name to visually emphasize which file is being operated on. --=-=-= Content-Type: text/x-patch Content-Disposition: inline Content-Description: bug#48805 patch Content-Transfer-Encoding: quoted-printable diff --git a/lisp/dired.el b/lisp/dired.el index 8527634760..165484302a 100644 =2D-- a/lisp/dired.el +++ b/lisp/dired.el @@ -3280,15 +3280,19 @@ dired-do-flagged-delete (interactive) (let* ((dired-marker-char dired-del-marker) (regexp (dired-marker-regexp)) - case-fold-search) + case-fold-search markers) (if (save-excursion (goto-char (point-min)) (re-search-forward regexp nil t)) (dired-internal-do-deletions (nreverse ;; this can't move point since ARG is nil - (dired-map-over-marks (cons (dired-get-filename) (point)) + (dired-map-over-marks (cons (dired-get-filename) + (let ((m (point-marker))) + (push m markers) + m)) nil)) nil t) + (dolist (m markers) (set-marker m nil)) (or nomessage (message "(No deletions requested)"))))) @@ -3299,12 +3303,17 @@ dired-do-delete ;; This is more consistent with the file marking feature than ;; dired-do-flagged-delete. (interactive "P") - (dired-internal-do-deletions - (nreverse - ;; this may move point if ARG is an integer - (dired-map-over-marks (cons (dired-get-filename) (point)) - arg)) - arg t)) + (let (markers) + (dired-internal-do-deletions + (nreverse + ;; this may move point if ARG is an integer + (dired-map-over-marks (cons (dired-get-filename) + (let ((m (point-marker))) + (push m markers) + m)) + arg)) + arg t) + (dolist (m markers) (set-marker m nil)))) (defvar dired-deletion-confirmer 'yes-or-no-p) ; or y-or-n-p? @@ -3312,11 +3321,6 @@ dired-internal-do-deletions ;; L is an alist of files to delete, with their buffer positions. ;; ARG is the prefix arg. ;; Filenames are absolute. - ;; (car L) *must* be the *last* (bottommost) file in the dired buffer. - ;; That way as changes are made in the buffer they do not shift the - ;; lines still to be changed, so the (point) values in L stay valid. - ;; Also, for subdirs in natural order, a subdir's files are deleted - ;; before the subdir itself - the other way around would not work. (let* ((files (mapcar #'car l)) (count (length l)) (succ 0) @@ -3337,9 +3341,10 @@ dired-internal-do-deletions (make-progress-reporter (if trashing "Trashing..." "Deleting...") succ count)) - failures) ;; files better be in reverse order for this loop! + failures) (while l - (goto-char (cdr (car l))) + (goto-char (marker-position (cdr (car l)))) + (dired-move-to-filename) (let ((inhibit-read-only t)) (condition-case err (let ((fn (car (car l)))) --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Fri Jun 04 06:02:31 2021 Received: (at 48805) by debbugs.gnu.org; 4 Jun 2021 10:02:31 +0000 Received: from localhost ([127.0.0.1]:45442 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lp6es-00049H-TL for submit@debbugs.gnu.org; Fri, 04 Jun 2021 06:02:31 -0400 Received: from quimby.gnus.org ([95.216.78.240]:32868) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lp6ep-000445-Fh for 48805@debbugs.gnu.org; Fri, 04 Jun 2021 06:02:30 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Type:MIME-Version:Message-ID:In-Reply-To:Date: References:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=p3Z8Fpwbq+jHAj9S8dgGpb9q9cPYm/hXaYPfTi9SL4A=; b=n1s0pKXcJ28k9jqvP9l6RaAAQQ ZQ0eHfoS1i2oSTCzyGSf+f9D+3TjJeFgUmwSvjATIj8TwqOVlZLNYRY4rFnR2oIaK3IHqGgMFYO+s 3wxyH/NMtwKLLGoN6MAFrWw6pS9VWSPgFilq3Y1/Zkc9cqtXloeSfAM9AOl5pQ/GZei4=; Received: from cm-84.212.220.105.getinternet.no ([84.212.220.105] helo=xo) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1lp6ef-00048T-5w; Fri, 04 Jun 2021 12:02:21 +0200 From: Lars Ingebrigtsen To: Stephen Berman Subject: Re: bug#48805: 27.2; dired-mode moves point to wrong positions while deleting non-empty directories References: <868s3rv2h3.fsf@gmail.com> <875yyuipjr.fsf@gmx.net> X-Now-Playing: Tracey Ullman's _Make More Noise (3)_: "They Don't Know" Date: Fri, 04 Jun 2021 12:02:16 +0200 In-Reply-To: <875yyuipjr.fsf@gmx.net> (Stephen Berman's message of "Thu, 03 Jun 2021 23:52:40 +0200") Message-ID: <875yyuyml3.fsf@gnus.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: Stephen Berman writes: > * lisp/dired.el (dired-do-flagged-delete, dired-do-delete): Use > point-marker instead of point to record each file name position. > Clean up the markers before returning. > (dired-internal-do-delet [...] Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 48805 Cc: ynyaaa@gmail.com, 48805@debbugs.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: -1.7 (-) Stephen Berman writes: > * lisp/dired.el (dired-do-flagged-delete, dired-do-delete): Use > point-marker instead of point to record each file name position. > Clean up the markers before returning. > (dired-internal-do-deletions): Move to the file name marker, and > then move point to the file name to visually emphasize which file > is being operated on. Looks good to me, so I've applied it to Emacs 28. -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no From debbugs-submit-bounces@debbugs.gnu.org Fri Jun 04 06:02:38 2021 Received: (at control) by debbugs.gnu.org; 4 Jun 2021 10:02:38 +0000 Received: from localhost ([127.0.0.1]:45445 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lp6ex-0004BU-6t for submit@debbugs.gnu.org; Fri, 04 Jun 2021 06:02:38 -0400 Received: from quimby.gnus.org ([95.216.78.240]:32892) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lp6ev-000489-KO for control@debbugs.gnu.org; Fri, 04 Jun 2021 06:02:33 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Subject:From:To:Message-Id:Date:Sender:Reply-To:Cc: MIME-Version:Content-Type:Content-Transfer-Encoding:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:In-Reply-To:References:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=NvWLyY/0V7nXpXw8usK1QoOONYbknPgNmK7LZEIoXHk=; b=TWoVhoqFvi9wVIZGulwRWTyUWt TPhmFGtZ8teLmC2eVkNMc5xYrmG9BOaneMrnt4/P/YtmqwlXSJrxHrfhwOufjEluRLVlg4oLxKPbq V5GLhWdcd14INlc+saSqNQgqhTCnH/Ev30xwPaSdnj/OfKv+guSYMTNheq5CWydPeC5E=; Received: from cm-84.212.220.105.getinternet.no ([84.212.220.105] helo=xo) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1lp6eo-00048i-5N for control@debbugs.gnu.org; Fri, 04 Jun 2021 12:02:28 +0200 Date: Fri, 04 Jun 2021 12:02:25 +0200 Message-Id: <874keeymku.fsf@gnus.org> To: control@debbugs.gnu.org From: Lars Ingebrigtsen Subject: control message for bug #48805 X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: close 48805 28.1 quit Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: control 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.7 (-) close 48805 28.1 quit From unknown Tue Jun 24 17:23:43 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Fri, 02 Jul 2021 11:24:04 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator