unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#9781: 24.0.90; VC can't commit removed files/directories.
@ 2011-10-18  6:36 Jan Djärv
  2011-10-18  6:59 ` Glenn Morris
  2011-10-20 21:05 ` Glenn Morris
  0 siblings, 2 replies; 10+ messages in thread
From: Jan Djärv @ 2011-10-18  6:36 UTC (permalink / raw)
  To: 9781

This bug report will be sent to the Bug-GNU-Emacs mailing list
and the GNU bug tracker at debbugs.gnu.org.  Please check that
the From: line contains a valid email address.  After a delay of up
to one day, you should receive an acknowledgement at that address.

Please write in English if possible, as the Emacs maintainers
usually do not have translators for other languages.

Please describe exactly what actions triggered the bug, and
the precise symptoms of the bug.  If you can, give a recipe
starting from `emacs -Q':

I'm surprised nobody has seen this.

In a bzr repository, do
% bzr rm some-file

and modify some other file.

Then in Emacs, do vc-dir on the directory where the file was.
Mark the file that is listed as removed.  Also mark the edited file.
Press v.

Expected result: I can type in a log message and commit.
Real result: A prompt in the minibuffer appears:
some-file is edited but read-only; make it writable and continue? (y/n) 

This is because in vc.el, vc-next-action there is this:

      (let ((ready-for-commit files))
	;; If files are edited but read-only, give user a chance to correct
	(dolist (file files)
	  (unless (file-writable-p file)
	    ;; Make the file+buffer read-write.
	    (unless (y-or-n-p (format "%s is edited but read-only; make it writable and continue? " file))
	      (error "Aborted"))
            ;; Maybe we somehow lost permissions on the directory.
            (condition-case nil
                (set-file-modes file (logior (file-modes file) 128))
              (error (error "Unable to make file writable")))

Files/directories that are removed are obviously not file-writable-p, so the logic is wrong.
Also, the choices in the question should be three:

1 Make writable and continue.
2 Don't make writable and continue
3 Abort

As it is now, you either exit on the "Aborted" error or if you try to continue on the "Unable to make file writable" error.

	Jan D.


If Emacs crashed, and you have the Emacs process in the gdb debugger,
please include the output from the following gdb commands:
    `bt full' and `xbacktrace'.
For information about debugging Emacs, please read the file
/Users/jhd/Applications/Emacs.app/Contents/Resources/etc/DEBUG.


In GNU Emacs 24.0.90.1 (x86_64-apple-darwin11.2.0, NS apple-appkit-1138.23)
of 2011-10-18 on zeplin
Windowing system distributor `Apple', version 10.3.1138
configured using `configure  '--verbose' '--enable-asserts' '--with-ns' '--without-x-toolkit' 'CFLAGS=-g''

Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: C
  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: sv_SE.UTF-8
  value of $XMODIFIERS: nil
  locale-coding-system: utf-8-unix
  default enable-multibyte-characters: t

Major mode: Lisp Interaction

Minor modes in effect:
  desktop-save-mode: t
  delete-selection-mode: t
  icomplete-mode: t
  display-time-mode: t
  tooltip-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
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
<escape> x r e p o r t - e m <tab> <return>

Recent messages:
Loading /Users/jhd/lib/elisp/BAK-file.el (source)...done
Loading /Users/jhd/lib/elisp/ccsetup.el (source)...done
Loading icomplete...done
Loading desktop...done
No desktop file.
For information about GNU Emacs and the GNU system, type C-h C-a.

Load-path shadows:
None found.

Features:
(shadow sort gnus-util mail-extr message format-spec rfc822 mml mml-sec
mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045
ietf-drums mm-util mail-prsvr mailabbrev mail-utils gmm-utils mailheader
emacsbug desktop cus-start cus-load msb delsel advice help-fns
advice-preload icomplete cc-mode cc-fonts easymenu cc-guess cc-menus
cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs regexp-opt time
time-date tooltip ediff-hook vc-hooks lisp-float-type mwheel ns-win
tool-bar dnd fontset image fringe lisp-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 loaddefs button faces
cus-face files text-properties overlay sha1 md5 base64 format env
code-pages mule custom widget hashtable-print-readable backquote
make-network-process ns multi-tty emacs)





^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2012-09-27  7:01 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-10-18  6:36 bug#9781: 24.0.90; VC can't commit removed files/directories Jan Djärv
2011-10-18  6:59 ` Glenn Morris
2011-10-19  7:01   ` Dan Nicolaescu
2011-10-20 21:05 ` Glenn Morris
2011-10-20 21:09   ` Glenn Morris
2011-10-21  9:15     ` Jan Djärv
2011-10-29 18:32       ` Glenn Morris
2011-10-29 19:46         ` Stefan Monnier
2012-09-27  7:01           ` Glenn Morris
2011-10-21  9:13   ` Jan Djärv

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).