summaryrefslogtreecommitdiffstats
path: root/emacs-bzr/pkgdep.patch
blob: d08ff6d37247816d96d85b63e41dd42787ef8f11 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
=== modified file 'lisp/emacs-lisp/package.el'
--- lisp/emacs-lisp/package.el	2013-08-03 02:34:22 +0000
+++ lisp/emacs-lisp/package.el	2013-08-16 20:40:09 +0000
@@ -973,6 +973,17 @@
 	    str)
       (error nil))))

+(defun package--prepare-dependencies (deps)
+  "Turn DEPS into an acceptable list of dependencies.
+
+Any parts missing a version string get a default version string
+of \"0\" (meaning any version) and an appropriate level of lists
+is wrapped around any parts requiring it."
+  (cond
+   ((symbolp deps) `((,deps "0")))
+   ((stringp (cadr deps)) `(,deps))
+   (t (mapcar (lambda (dep) (if (symbolp dep) `(,dep "0") dep)) deps))))
+
 (defun package-buffer-info ()
   "Return a `package-desc' describing the package in the current buffer.

@@ -1003,7 +1014,9 @@
 	 "Package lacks a \"Version\" or \"Package-Version\" header"))
       (package-desc-from-define
        file-name pkg-version desc
-       (if requires-str (package-read-from-string requires-str))
+       (if requires-str
+           (package--prepare-dependencies
+            (package-read-from-string requires-str)))
        :kind 'single
        :url homepage))))