Subject: bug#24017: closed (Re: bug#24017: 24.5; vc-dir-mark loop infinitely when region is active and cursor position in last blank line.)

From: [email-masked] (GNU bug Tracking System)
Date: Mon, 18 Dec 2017 19:56:02 +0000

Your bug report

#24017: 24.5; vc-dir-mark loop infinitely when region is active and cursor position in last blank line.

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 [email-masked].

-- 
24017: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=24017
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#24017: 24.5; vc-dir-mark loop infinitely when region is active and cursor position in last blank line.
From: [email-masked] (Charles A. Roelli)
To: 綾小路剛志 <[email-masked]>
Cc: [email-masked]
Date: Mon, 18 Dec 2017 20:59:07 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

> From: 綾小路剛志 <[email-masked]>
> Date: Sun, 17 Jul 2016 19:07:50 +0900
> 
> How to reproduce bug.
> 
> 1. Create a directory and move there.
> 
> mkdir BUG
> cd BUG
> 
> 2. Create files and start emacs.
> 
> $ echo foo > foo.txt 
> $ echo bar > bar.txt 
> $ LANG=C emacs -Q
> 
> 3. Open a file.
> 
> C-x C-f foo.txt
> 
> 4. Create repository (this example use SVN for VC backend).
> 
> C-x v v SVN <RET> <RET>
> 
> 5. Open *vc-dir* buffer
> 
> C-x v d <RET>
> At now, vc-dir buffer displays directory contents like bellow.
> 
> VC backend : SVN
> Working dir: ~/BUG/
> Repository : file:///home/h1r0s/BUG/SVN
> 
> ./
> unregistered SVN
> unregistered bar.txt
> added foo.txt
> 
> 6. Select last file's line entirely.
> 
> C-s <RET> foo.txt C-a S-<Down>
> 
> 7. Mark the region
> 
> M-x vc-dir-mark (or hit 'm')
> 
> ... And this will never return.
> 
> Thanks.
> ---
> Ayanokoji Takesi <[email-masked]>
> 
> In GNU Emacs 24.5.1 (i686-pc-linux-gnu, GTK+ Version 3.4.4)
> of 2015-04-27 on himawari
> Windowing system distributor `Fedora Project', version 11.0.11203000
> System Description: Fedora release 17 (Beefy Miracle)

Thanks, I think I've fixed this now.

  commit 9685774e38dc6f5670c8e57dc9f49335f4f738b6
  Date:   Mon Dec 18 20:51:30 2017 +0100

  Fix infinite loop in vc-dir-mark-unmark

  * lisp/vc/vc-dir.el (vc-dir-mark-unmark): Prevent from getting
  stuck on the same line in an infinite loop.  (Bug#24017)

Subject: 24.5; vc-dir-mark loop infinitely when region is active and cursor position in last blank line.
From: 綾小路剛志 <[email-masked]>
To: [email-masked]
Date: Sun, 17 Jul 2016 19:07:50 +0900
List-Id: <debbugs-submit.debbugs.gnu.org>

How to reproduce bug.

1. Create a directory and move there.

   mkdir BUG
   cd BUG

2. Create files and start emacs.

   $ echo foo > foo.txt
   $ echo bar > bar.txt
   $ LANG=C emacs -Q

3. Open a file.

   C-x C-f foo.txt

4. Create repository (this example use SVN for VC backend).

   C-x v v SVN <RET> <RET>

5. Open *vc-dir* buffer

   C-x v d <RET>

At now, vc-dir buffer displays directory contents like bellow.

     VC backend : SVN
     Working dir: ~/BUG/
     Repository : file:///home/h1r0s/BUG/SVN

     ./
     unregistered         SVN
     unregistered         bar.txt
     added                foo.txt

6. Select last file's line entirely.

   C-s <RET> foo.txt C-a S-<Down>

7. Mark the region

   M-x vc-dir-mark (or hit 'm')

   ... And this will never return.

Thanks.
---
Ayanokoji Takesi <[email-masked]>

In GNU Emacs 24.5.1 (i686-pc-linux-gnu, GTK+ Version 3.4.4)
 of 2015-04-27 on himawari
Windowing system distributor `Fedora Project', version 11.0.11203000
System Description: Fedora release 17 (Beefy Miracle)

Important settings:
  value of $LANG: ja_JP.UTF-8
  value of $XMODIFIERS: @im=ibus
  locale-coding-system: utf-8-unix

Major mode: VC dir

Minor modes in effect:
  tooltip-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
  buffer-read-only: t
  line-number-mode: t
  transient-mark-mode: t

Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.
arg ~/BUG/
Registering (/home/h1r0s/BUG/foo.txt)... done
Mark saved where search started [2 times]
Mark set
Quit

Load-path shadows:
None found.

Features:
(shadow sort gnus-util mail-extr emacsbug message format-spec rfc822 mml
easymenu mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231
mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums
mm-util help-fns mail-prsvr mail-utils misearch multi-isearch vc-dir
ewoc vc-arch vc-mtn vc-hg vc-git vc-bzr vc-sccs vc-svn vc-cvs vc-rcs vc
vc-dispatcher time-date japan-util tooltip electric uniquify ediff-hook
vc-hooks lisp-float-type mwheel x-win x-dnd tool-bar dnd fontset image
regexp-opt fringe tabulated-list newcomment lisp-mode prog-mode register
page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock
font-lock syntax facemenu font-core frame cham georgian utf-8-lang
misc-lang vietnamese tibetan thai tai-viet lao korean japanese hebrew
greek romanian slovak czech european ethiopic indian cyrillic chinese
case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer 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 make-network-process dbusbind
gfilenotify dynamic-setting system-font-setting font-render-setting
move-toolbar gtk x-toolkit x multi-tty emacs)

Memory information:
((conses 8 1672324 101516)
 (symbols 24 18605 1)
 (miscs 20 212 1224)
 (strings 16 93798 25209)
 (string-bytes 1 2990509)
 (vectors 8 12267)
 (vector-slots 4 490833 16588)
 (floats 8 67 333)
 (intervals 28 477039 12423)
 (buffers 512 16)
 (heap 1024 70345 1396))