I noticed that the current bzr checkout locks up when ~/.bazaar/ignore
does not exist. The quick fix is to call (expand-file-name ...) on
`dir' in bzr-ignore-setup, but let's do it right.
<<LOG-START>>
* lisp/bzr.el (bzr-ignore-setup): Call dvc-make-temp-dir. If "bzr init;
bzr ignored" fails to make the file, make it ourselves. There's no
need to throw a confusing warning message here.
* lisp/dvc-emacs.el (dvc-emacs-make-temp-dir): New function that is
aliased to dvc-make-temp-dir. It creates a temporary directory with a
given prefix in the default temp area, returning its location.
* lisp/dvc-xemacs.el (dvc-xmas-make-temp-dir): Ditto, but for XEmacs.
<<LOG-END>>
[VERSION] dvc-dev-bzr
bzr (bazaar-ng) 0.8.2
Emacs : GNU Emacs 22.0.50.1 (i686-pc-linux-gnu, GTK+ Version 2.8.18)
of 2006-07-30 on tuxtanker
--
Michael Olson -- FSF Associate Member #652 -- http://www.mwolson.org/
Interests: Emacs Lisp, text markup, protocols -- Jabber: mwolson_at_hcoop.net
/` |\ | | | IRC: freenode.net/mwolson: #emacs, #hcoop, #muse, #PurdueLUG
|_] | \| |_| Projects: Emacs, Muse, ERC, EMMS, Planner, ErBot, DVC
=== modified file 'lisp/bzr.el'
--- lisp/bzr.el
+++ lisp/bzr.el
@@ -536,18 +536,14 @@
(let* ((file (bzr-config-file "ignore"))
(buf (or (when (file-exists-p file)
(find-file-noselect file))
- ;; let bzr create the file.
- (let* ((dir (make-temp-name "dvc-bzr-ignore"))
- (foo (make-directory dir))
+ ;; give bzr a chance to create the file
+ (let* ((dir (dvc-make-temp-dir "dvc-bzr-ignore"))
(default-directory dir))
(dvc-run-dvc-sync 'bzr (list "init")
:finished 'dvc-null-handler)
(dvc-run-dvc-sync 'bzr (list "ignored")
:finished 'dvc-null-handler)
- (if (file-exists-p file)
- (find-file-noselect file)
- (message "WARNING: Could not find or create bzr user-wide ignore file.")
- nil))))
+ (find-file-noselect file))))
(ins t))
(when buffer
(with-current-buffer buf
=== modified file 'lisp/dvc-emacs.el'
--- lisp/dvc-emacs.el
+++ lisp/dvc-emacs.el
@@ -66,6 +66,16 @@
(forward-line 0)
(1+ (count-lines start (point)))))))
+(defun dvc-emacs-make-temp-dir (prefix)
+ "Make a temporary directory using PREFIX.
+Return the name of the directory."
+ (let ((dir (make-temp-name
+ (expand-file-name prefix temporary-file-directory))))
+ (make-directory dir)
+ dir))
+
+(defalias 'dvc-make-temp-dir 'dvc-emacs-make-temp-dir)
+
(provide 'dvc-emacs)
;; Local Variables:
;; arch-tag: 66b92889-1ce9-4c1d-818a-8bd5ee499091
=== modified file 'lisp/dvc-xemacs.el'
--- lisp/dvc-xemacs.el
+++ lisp/dvc-xemacs.el
@@ -315,6 +315,15 @@
(unless (functionp 'diff-hunk-prev)
(defalias 'diff-hunk-prev 'diff-prev-hunk))
+(defun dvc-xmas-make-temp-dir (prefix)
+ "Make a temporary directory using PREFIX.
+Return the name of the directory."
+ (let ((dir (make-temp-name (expand-file-name prefix (temp-directory)))))
+ (make-directory dir)
+ dir))
+
+(defalias 'dvc-make-temp-dir 'dvc-xmas-make-temp-dir)
+
;; From Gnus.
(defun dvc-xmas-move-overlay (extent start end &optional buffer)
(set-extent-endpoints extent start end buffer))
_______________________________________________
Dvc-dev mailing list
[email protected]
https://mail.gna.org/listinfo/dvc-dev