[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Overzealous error checking in pcl-cvs

From: John Wiegley
Subject: Overzealous error checking in pcl-cvs
Date: Tue, 12 Mar 2002 14:00:52 -0700

This bug report will be sent to the Free Software Foundation,
not to your local site managers!
Please write in English, because the Emacs maintainers do not have
translators to read other languages for them.

Your bug report will be posted to the address@hidden mailing list,
and to the gnu.emacs.bug news group.

In GNU Emacs 21.1.1 (i386-debian-linux-gnu, X toolkit, Xaw3d scroll bars)
 of 2001-12-06 on raven, modified by Debian
configured using `configure  i386-debian-linux-gnu --prefix=/usr 
--sharedstatedir=/var/lib --libexecdir=/usr/lib --localstatedir=/var/lib 
--infodir=/usr/share/info --mandir=/usr/share/man --with-pop=yes --with-x=yes 
--with-x-toolkit=athena --without-gif'
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: C
  locale-coding-system: nil
  default-enable-multibyte-characters: t

Please describe exactly what actions triggered the bug
and the precise symptoms of the bug:

The following function, in pcvs.el, should not always check if CVS
exists.  For example, if I have a directory filled with CVS projects,
*but the directory itself is not in a CVS project*, cvs will run the
given command in all the projects contained within that directory.
This is a nice feature when dealing with multiple projects, where the
repository does not define an "ueber-project".

By commenting out the error check, I am able to use this "overview"
methodology.  Perhaps the error check should make sure that at least
one subdirectory has a CVS file in it, if the current directory does

(defun* cvs-cmd-do (cmd dir flags fis new
                        &key cvsargs noexist dont-change-disc noshow)
  (let* ((dir (file-name-as-directory
               (abbreviate-file-name (expand-file-name dir))))
         (cvsbuf (cvs-make-cvs-buffer dir new)))
    ;; Check that dir is under CVS control.
    (unless (file-directory-p dir)
      (error "%s is not a directory" dir))
    ;(unless (or noexist (file-directory-p (expand-file-name "CVS" dir)))
    ;  (error "%s does not contain CVS controlled files" dir))

    (set-buffer cvsbuf)
    (cvs-mode-run cmd flags fis
                  :cvsargs cvsargs :dont-change-disc dont-change-disc)

    (if noshow cvsbuf
      (let ((pop-up-windows nil)) (pop-to-buffer cvsbuf)))))

reply via email to

[Prev in Thread] Current Thread [Next in Thread]