bug#3213: 23.0.92; vc-svn-parse-status doesn't recognize deleted files

Bob Rogers <[email protected]>
Newsgroups gmane.emacs.bugs,gmane.emacs.pretest.bugs
Message-ID <[email protected]>
   To reproduce:

   1.  "emacs -Q" in a Subversion working copy (I'm using a 1.5.0
client).

   2.  "C-x v d" to get in to VC dir mode.

   3.  Flag any file for removal via M-x vc-delete-file.  The deleted
file will show up in the VC dir window as "edited" rather than removed
(and can be reverted afterwards).

   This seems to be a simple case of failing to recognize "D" as meaning
deletion in vc-svn-parse-status; it only knows about "R".  The patch
below adds "D" as a synonym, as I assume "R" is still necessary for
compatibility with older versions of Subversion.  (Though if SVN ever
did use "R", I don't remember it.)

					-- Bob Rogers
					   http://www.rgrjr.com/

------------------------------------------------------------------------
Index: lisp/vc-svn.el
===================================================================
RCS file: /sources/emacs/emacs/lisp/vc-svn.el,v
retrieving revision 1.113
diff -c -r1.113 vc-svn.el
*** lisp/vc-svn.el	15 Apr 2009 00:32:51 -0000	1.113
--- lisp/vc-svn.el	4 May 2009 21:59:32 -0000
***************
*** 662,668 ****
  	     'edited))
  	  ((eq status ?I)
  	   (vc-file-setprop file 'vc-state 'ignored))
! 	  ((eq status ?R)
  	   (vc-file-setprop file 'vc-state 'removed))
  	  (t 'edited)))))
      (when filename (vc-file-getprop filename 'vc-state))))
--- 662,668 ----
  	     'edited))
  	  ((eq status ?I)
  	   (vc-file-setprop file 'vc-state 'ignored))
! 	  ((memq status '(?D ?R))
  	   (vc-file-setprop file 'vc-state 'removed))
  	  (t 'edited)))))
      (when filename (vc-file-getprop filename 'vc-state))))
------------------------------------------------------------------------
In GNU Emacs 23.0.92.1 (i686-pc-linux-gnu, GTK+ Version 2.12.9)
 of 2009-04-24 on rgr
Windowing system distributor `The X.Org Foundation', version 11.0.10400090
Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: en_US.UTF-8
  value of $XMODIFIERS: nil
  locale-coding-system: utf-8-unix
  default-enable-multibyte-characters: t

Major mode: VM

Minor modes in effect:
  mc-read-mode: t
  diff-auto-refine-mode: t
  shell-dirtrack-mode: t
  mouse-wheel-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-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t

Recent input:
e v e r t SPC f o o <tab> <backspace> <backspace> <return> 
M-p <return> M-p M-p M-p <return> <f8> s v n SPC d 
i f f SPC l i s p - M-b - M-b <M-backspace> c v s SPC 
M-f C-f C-f u SPC <backspace> <backspace> c SPC C-e 
<backspace> / v c - s v <tab> <return> C-x o C-u C-u 
C-n C-c C-c C-e C-M-b ( o <backspace> <backspace> C-r 
m e m q C-r C-u C-SPC C-f m C-f m M-f M-f C-f ' ( M-f 
SPC ? R ) C-e C-M-b C-M-f C-M-f C-e C-M-b C-M-b C-M-f 
C-M-f C-c C-c C-x C-s <f8> M-p <return> M-p C-_ C-x 
C-b C-n d C-n C-n SPC C-e C-M-b ( m e m b <backspace> 
q SPC M-d <backspace> M-f SPC ' ( R <backspace> ? R 
M-t C-e ) C-c C-c C-M-b C-M-f C-M-f C-e C-M-b C-M-b 
C-M-f C-M-f C-x d <return> g q C-x C-s C-x d <return> 
g p p B SPC g g q q C-_ <f8> p w d <return> s r c / 
e m a <tab> SPC - Q SPC ~ / p r o <tab> t e s <tab> 
2 / t e <tab> f o <tab> <return> s v n SPC s t a t 
<return> <f8> s v n SPC s t a t <return> s v n SPC 
r e v e r t SPC f o <tab> <backspace> <backspace> <return> 
<f8> M-p M-p M-p M-p <return> C-x C-b C-s * m a i C-a 
SPC M-< C-n C-n C-e s <backspace> v c <backspace> <backspace> 
C-n C-n C-n C-n M-> C-w C-x k <return> C-x b e m <tab> 
<return> M-x v c <backspace> <backspace> e <backspace> 
r e p o r <tab> <return>

Recent messages:
Partially completed
Completed
Partially completed
Completed
History item: 1
History item: 2
History item: 3
History item: 4
Mark saved where search started
Mark set [2 times]
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.