From: yamaoka Date: Thu, 29 Apr 2004 01:33:00 +0000 (+0000) Subject: Synch to No Gnus 200404290042. X-Git-Tag: t-gnus-6_17_4-quimby-~955 X-Git-Url: http://git.chise.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=49e5b10a924281cdd641284e405f3ec8d5958479;p=elisp%2Fgnus.git- Synch to No Gnus 200404290042. --- diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 7f5d11a..f962bd4 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,10 @@ +2004-04-29 Jesper Harder + + * nnrss.el (nnrss-get-namespace-prefix): Use string= to compare + strings! Reported by David D. Smith . + (nnrss-check-group, nnrss-read-group-data): Hash on Subject if + link is missing. + 2004-04-28 Jesper Harder * html2text.el (html2text-replace-list): Add & and '. diff --git a/lisp/nnrss.el b/lisp/nnrss.el index d2a8cf9..0662862 100644 --- a/lisp/nnrss.el +++ b/lisp/nnrss.el @@ -331,7 +331,7 @@ ARTICLE is the article number of the current headline.") (let ((coding-system-for-read 'binary)) (load file nil t t)) (dolist (e nnrss-group-data) - (puthash (nth 2 e) e nnrss-group-hashtb) + (puthash (or (nth 2 e) (nth 3 e)) t nnrss-group-hashtb) (when (and (car e) (> nnrss-group-min (car e))) (setq nnrss-group-min (car e))) (when (and (car e) (< nnrss-group-max (car e))) @@ -341,7 +341,7 @@ ARTICLE is the article number of the current headline.") (gnus-make-directory nnrss-directory) (let ((coding-system-for-write 'binary)) (with-temp-file (nnrss-make-filename group server) - (gnus-prin1 `(setq nnrss-group-data ',nnrss-group-data ))))) + (gnus-prin1 `(setq nnrss-group-data ',nnrss-group-data))))) (defun nnrss-make-filename (name server) (expand-file-name @@ -420,11 +420,13 @@ ARTICLE is the article number of the current headline.") content-ns (nnrss-get-namespace-prefix xml "http://purl.org/rss/1.0/modules/content/")) (dolist (item (nreverse (nnrss-find-el (intern (concat rss-ns "item")) xml))) (when (and (listp item) - (eq (intern (concat rss-ns "item")) (car item)) - (setq url (nnrss-decode-entities-unibyte-string - (nnrss-node-text rss-ns 'link (cddr item)))) - (not (gethash url nnrss-group-hashtb))) - (setq subject (nnrss-node-text rss-ns 'title item)) + (string= (concat rss-ns "item") (car item)) + (if (setq url (nnrss-decode-entities-unibyte-string + (nnrss-node-text rss-ns 'link (cddr item)))) + (not (gethash url nnrss-group-hashtb)) + (setq subject (nnrss-node-text rss-ns 'title item)) + (not (gethash subject nnrss-group-hashtb)))) + (setq subject (or subject (nnrss-node-text rss-ns 'title item))) (setq extra (or (nnrss-node-text content-ns 'encoded item) (nnrss-node-text rss-ns 'description item))) (setq author (or (nnrss-node-text rss-ns 'author item) @@ -443,8 +445,9 @@ ARTICLE is the article number of the current headline.") date (and extra (nnrss-decode-entities-unibyte-string extra))) nnrss-group-data) - (puthash url (car nnrss-group-data) nnrss-group-hashtb) - (setq changed t))) + (puthash (or url subject) t nnrss-group-hashtb) + (setq changed t)) + (setq subject nil)) (when changed (nnrss-save-group-data group server) (let ((pair (assoc group nnrss-server-data))) @@ -774,7 +777,7 @@ prefix), return the prefix." "") ((eq (length nslist) 2) ; extract prefix (cadr nslist))))) - (if (and ns (not (eq ns ""))) + (if (and ns (not (string= ns ""))) (concat ns ":") ns)))