GNU bug report logs -
#5961
23.1 regression: vc-hg does not show 0 version number for 'added files
Previous Next
Reported by: Dan Nicolaescu <dann <at> gnu.org>
Date: Fri, 16 Apr 2010 20:08:02 UTC
Severity: normal
Done: Dan Nicolaescu <dann <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
This is an automatic notification regarding your bug report
which was filed against the emacs package:
#5961: 23.1 regression: vc-hg does not show 0 version number for 'added files
It has been closed by Dan Nicolaescu <dann <at> gnu.org>.
Their explanation is attached below along with your original report.
If this explanation is unsatisfactory and you have not received a
better one in a separate message then please contact Dan Nicolaescu <dann <at> gnu.org> by
replying to this email.
--
5961: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=5961
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
Chong Yidong <cyd <at> stupidchicken.com> writes:
> Dan Nicolaescu <dann <at> gnu.org> writes:
>
>> After this change:
>>
>> Show working revision correctly for mercurial.
>> * vc-hg.el (vc-hg-working-revision): Use hg parent instead of
>> hg log as suggested by Alex Harsanyi <alexharsanyi <at> gmail.com>,
>>
>> the mode-line show Hg@ instead of Hg <at> 0 for files in the VC 'added
>> state. This is a regression from 23.1.
>>
>> The problem is that the "hg parent " command does not distinguish
>> between the 'added and 'unregistered files.
>>
>> Should the patch below go into the 23.2 branch?
>
> Yes please. I don't have hg installed at the moment, so it's
> inconvenient for me to double check your work, but if you're confident
> it's correct then please go ahead and commit it.
Thanks, done.
[Message part 3 (message/rfc822, inline)]
After this change:
Show working revision correctly for mercurial.
* vc-hg.el (vc-hg-working-revision): Use hg parent instead of
hg log as suggested by Alex Harsanyi <alexharsanyi <at> gmail.com>,
the mode-line show Hg@ instead of Hg <at> 0 for files in the VC 'added state. This is a regression from 23.1.
The problem is that the "hg parent " command does not distinguish
between the 'added and 'unregistered files.
Should the patch below go into the 23.2 branch?
=== modified file 'lisp/vc-hg.el'
--- lisp/vc-hg.el 2010-04-07 05:56:35 +0000
+++ lisp/vc-hg.el 2010-04-16 19:36:29 +0000
@@ -196,16 +196,16 @@ If nil, use the value of `vc-diff-switch
(let*
((status nil)
(default-directory (file-name-directory file))
+ ;; Avoid localization of messages so we can parse the output.
+ (avoid-local-env (append (list "TERM=dumb" "LANGUAGE=C" "HGRC=")
+ process-environment))
(out
(with-output-to-string
(with-current-buffer
standard-output
(setq status
(condition-case nil
- (let ((process-environment
- ;; Avoid localization of messages so we can parse the output.
- (append (list "TERM=dumb" "LANGUAGE=C" "HGRC=")
- process-environment)))
+ (let ((process-environment avoid-local-env))
;; Ignore all errors.
(process-file
"hg" nil t nil
@@ -213,7 +213,21 @@ If nil, use the value of `vc-diff-switch
;; Some problem happened. E.g. We can't find an `hg'
;; executable.
(error nil)))))))
- (when (eq 0 status) out)))
+ (if (eq 0 status)
+ out
+ ;; Check if the file is in the 'added state, the above hg
+ ;; command does not distinguish between 'added and 'unregistered.
+ (setq status
+ (condition-case nil
+ (let ((process-environment avoid-local-env))
+ ;; Ignore all errors.
+ (process-file
+ "hg" nil nil nil
+ "log" "-l1" (file-relative-name file)))
+ ;; Some problem happened. E.g. We can't find an `hg'
+ ;; executable.
+ (error nil)))
+ (when (eq 0 status) "0"))))
;;; History functions
This bug report was last modified 15 years and 34 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.