[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bongo-patches] Make `bongo-infoset-artist-name' et al. return nil for `
From: |
Daniel Brockman |
Subject: |
[bongo-patches] Make `bongo-infoset-artist-name' et al. return nil for `unknown' field values (patch by Daniel Jensen) |
Date: |
Mon, 08 Jan 2007 17:55:13 +0100 |
User-agent: |
Gnus/5.11 (Gnus v5.11) Emacs/22.0.92 (gnu/linux) |
Thanks. I applied the following patch.
Mon Jan 8 17:51:44 CET 2007 Daniel Brockman <address@hidden>
* Make `bongo-infoset-artist-name' et al. return nil for
`unknown' field values (patch by Daniel Jensen).
diff -rN -u old-bongo/bongo.el new-bongo/bongo.el
--- old-bongo/bongo.el 2007-01-08 17:52:19.000000000 +0100
+++ new-bongo/bongo.el 2007-01-08 17:52:19.000000000 +0100
@@ -1827,16 +1827,21 @@
(bongo-unescape-uri file-name)
file-name)))))))
+(defun bongo-double-alist-get (alist-1 key-1 key-2)
+ (let ((alist-2 (bongo-alist-get alist-1 key-1)))
+ (when (listp alist-2)
+ (bongo-alist-get alist-2 key-2))))
+
(defun bongo-infoset-artist-name (infoset)
- (bongo-alist-get (bongo-alist-get infoset 'artist) 'name))
+ (bongo-double-alist-get infoset 'artist 'name))
(defun bongo-infoset-album-year (infoset)
- (bongo-alist-get (bongo-alist-get infoset 'album) 'year))
+ (bongo-double-alist-get infoset 'album 'year))
(defun bongo-infoset-album-title (infoset)
- (bongo-alist-get (bongo-alist-get infoset 'album) 'title))
+ (bongo-double-alist-get infoset 'album 'title))
(defun bongo-infoset-track-index (infoset)
- (bongo-alist-get (bongo-alist-get infoset 'track) 'index))
+ (bongo-double-alist-get infoset 'track 'index))
(defun bongo-infoset-track-title (infoset)
- (bongo-alist-get (bongo-alist-get infoset 'track) 'title))
+ (bongo-double-alist-get infoset 'track 'title))
;;;; Basic point-manipulation routines
--
Daniel Brockman <address@hidden>