Package: quilt-el
Version: 0.45.4-1
Severity: normal
Tags: patch

The code for setting the value of quilt-patches-directory in quilt.el does
not honor the user's settings in ~/.quiltrc.  Quilt seems to set the value
of this variable in the following priority order:

    1) Value set in ~/.quiltrc
    2) Environment variable QUILT_PATCHES
    3) "patches"

The patch attached below fixes this.  I tested it in both
emacs-snapshot-gtk_20070928-1~gutsy and xemacs21_21.4.21-3.

Just an aside note: for me, it would be logical that 2) above has higher
priority than 1).  But this is another story.  Please, feel free to forward
this to the quilt maintainers if you agree with me.

Cheers,

Rafael



-- System Information:
Debian Release: testing/unstable
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/dash
Kernel: Linux 2.6.18-3-686
Locale: LANG=en_US, LC_CTYPE=en_US (charmap=ISO-8859-1)

Versions of packages quilt-el depends on:
ii  emacs-snapshot [emacs 1:20070928-1~gutsy The GNU Emacs editor (development 
ii  quilt                 0.46-4             Tool to work with series of patche
ii  xemacs21-mule [emacse 21.4.21-3          highly customizable text editor --
ii  xemacs21-nomule [emac 21.4.21-3          highly customizable text editor --

quilt-el recommends no packages.

-- no debconf information

--- quilt.el-orig       2008-04-16 09:32:37.000000000 +0200
+++ quilt.el    2008-04-16 09:38:45.000000000 +0200
@@ -20,8 +20,20 @@
   (if (> (call-process "quilt" nil nil nil "applied") 0) 1))
 
 (defun quilt-patches-directory ()
-  (or (getenv "QUILT_PATCHES")
-      "patches"))
+  (or (save-excursion
+        (set-buffer (generate-new-buffer " *cmd"))
+        (shell-command
+         (concat "test -f ~/.quiltrc && . ~/.quiltrc ;"
+                 "echo -n $QUILT_PATCHES")
+         t)
+        (unwind-protect
+            (let ((v  (buffer-string)))
+              (if (string= "" (buffer-string))
+                  nil
+                v))
+          (kill-buffer (current-buffer))))
+      (or (getenv "QUILT_PATCHES")
+          "patches")))
 
 (defun quilt-find-dir (fn)
   "find the top level dir for quilt from fn"

Reply via email to