GNU bug report logs - #9123
bug/misbehaviour in vc-next action when stealing locks

Previous Next

Package: emacs;

Reported by: albemarle <neshatian <at> gmail.com>

Date: Tue, 19 Jul 2011 16:36:02 UTC

Severity: normal

Tags: help, moreinfo, unreproducible

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

Full log


Message #14 received at 9123 <at> debbugs.gnu.org (full text, mbox):

From: Glenn Morris <rgm <at> gnu.org>
To: Kourosh Neshatian <neshatian <at> gmail.com>
Cc: 9123 <at> debbugs.gnu.org
Subject: Re: bug#9123: bug/misbehaviour in vc-next action when stealing locks
Date: Mon, 5 Sep 2011 20:55:11 -0400
Kourosh Neshatian wrote (on Sun, 4 Sep 2011 at 15:57 +1200):

> I wonder if you could reproduce the error.

No, see below.

> > Steps to reproduce the error:
> >
> > 1. Alice (user name 'alice') runs Emacs with 'emacs -q --no-site-file'
> >
> > 2. Alice creates a text file in the directory, say 'document.tex', writes
> > some text in it and saves it.
> >
> > 3. She runs 'vc-next-action' (C-x v v) and chooses RCS as her
> > backend. This creates an RCS file 'RCS/document.tex,v'.
> >
> > 4. Alice checks out and locks the file again by 'vc-next-action' (C-x
> > v v) to add/make some changes in the document.

I did the following as normal user A:

umask 0
mkdir ~/foo
echo "test" > foo/1
emacs-23.3 -Q foo/1
C-x v v RCS RET RET  # now registered with RCS
C-x v v  # now file is checked out

> > 5. Meanwhile, Bob (user name 'bob') logs in.  He has access to the RCS
> > directory (usually via a symbolic link). He checks out document.tex
> > stealing  the lock (rcs -l ...).

I logged in as normal user B and did:
emacs-23.3 -Q ~A/foo/1

Emacs says "Note: file is write protected".

C-x v v
 steal the lock yes/no?  yes RET

A mail buffer pops up, prompting me to send an email to user A explaining
why I stole the lock. I do so.

> > 6. Now, Alice has finished editing her copy; she saves the file and
> > runs 'vc-next-action' (to check in). Emacs will ask her if she wants
> > to steal the lock, she says 'yes'. What happens is that Emacs
> > over-writes her local copy by the last version in the
> > repository. Alice's changes/edits are all gone and apparently she does
> > not have any means to recover!

Back in user A's still-running Emacs, I type some text in the still
open buffer. Emacs says:

  file changed on disk; really edit the buffer? 

I answer yes, type some text and save. Emacs says:

  file has changed since visited or saved.  Save anyway?

I answer yes. Emacs says:

  file is write-protected; try to save anyway?

I answer yes.

I then do C-x v v and try to check in the file. This fails, with an
error message that the file is locked by user B.

This was with RCS 5.7. I never notmally use RCS, maybe I am missing
something.





This bug report was last modified 11 years and 188 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.