From cbbd2cd318d1b4ba9803650c2ef8ac2bba00f562 Mon Sep 17 00:00:00 2001 From: Thien-Thi Nguyen Date: Mon, 6 Feb 2006 15:58:38 +0000 Subject: [PATCH] (vc-svn-previous-version, vc-svn-next-version): New funcs. --- lisp/ChangeLog | 6 +++++- lisp/vc-svn.el | 17 +++++++++++++++++ 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index a074aad691..c2d9216044 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,4 +1,8 @@ -2006-02-06 Lars Hansen +2006-02-06 Thien-Thi Nguyen + + * vc-svn.el (vc-svn-previous-version, vc-svn-next-version): New funcs. + +2006-02-06 Lars Hansen * generic-x.el (etc-fstab-generic-mode): Add file system types cifs and usbdevfs. Allow special chars in file names. diff --git a/lisp/vc-svn.el b/lisp/vc-svn.el index 966f5d2c9c..82942f7835 100644 --- a/lisp/vc-svn.el +++ b/lisp/vc-svn.el @@ -176,6 +176,23 @@ This is only meaningful if you don't use the implicit checkout model ((eq svn-state 'needs-patch) "(patch)") ((eq svn-state 'needs-merge) "(merge)")))) +(defun vc-svn-previous-version (file rev) + (let ((newrev (1- (string-to-number rev)))) + (when (< 0 newrev) + (number-to-string newrev)))) + +(defun vc-svn-next-version (file rev) + (let ((newrev (1+ (string-to-number rev)))) + ;; The "workfile version" is an uneasy conceptual fit under Subversion; + ;; we use it as the upper bound until a better idea comes along. If the + ;; workfile version W coincides with the tree's latest revision R, then + ;; this check prevents a "no such revision: R+1" error. Otherwise, it + ;; inhibits showing of W+1 through R, which could be considered anywhere + ;; from gracious to impolite. + (unless (< (string-to-number (vc-file-getprop file 'vc-workfile-version)) + newrev) + (number-to-string newrev)))) + ;;; ;;; State-changing functions -- 2.20.1