summaryrefslogtreecommitdiff
path: root/lisp
diff options
context:
space:
mode:
Diffstat (limited to 'lisp')
-rw-r--r--lisp/image/gravatar.el14
1 files changed, 9 insertions, 5 deletions
diff --git a/lisp/image/gravatar.el b/lisp/image/gravatar.el
index 4f37834a27f..b1e2a314ce8 100644
--- a/lisp/image/gravatar.el
+++ b/lisp/image/gravatar.el
@@ -160,12 +160,16 @@ to track whether you're reading a specific mail."
(cond
((and
result ;there is a result
- (let* ((data (mapcar (lambda (record)
+ (let* ((answers (dns-get 'answers result))
+ (data (mapcar (lambda (record)
(dns-get 'data (cdr record)))
- (dns-get 'answers result)))
- (priorities (mapcar (lambda (r)
- (dns-get 'priority r))
- data))
+ ;; We may get junk data back (or CNAME;
+ ;; ignore).
+ (and (eq (dns-get 'type answers) 'SRV)
+ answers)))
+ (priorities (and (mapcar (lambda (r)
+ (dns-get 'priority r))
+ data)))
(max-priority (if priorities
(apply #'max priorities)
0))