diff options
author | Kyle Meyer <kyle@kyleam.com> | 2020-08-27 23:19:20 -0400 |
---|---|---|
committer | Kyle Meyer <kyle@kyleam.com> | 2020-08-28 23:05:56 -0400 |
commit | 22ba165220a7041b331c860cb6dfdca237f59799 (patch) | |
tree | a8ee0d3312399c1fafbad74a53f3d5105855d74a /piem-eww.el | |
parent | 673811ea1b2285059ab36e09c42682cd2d21686f (diff) | |
download | piem-22ba165220a7041b331c860cb6dfdca237f59799.tar.gz |
elfeed, eww: Be stricter about the returned message ID
Using the second group in piem-link-re is not reliable because the
trailing part of the URL may be anything. Instead get the inboxes
:url first and then generate a regular expression that has that value
as the prefix.
Message-Id: <20200828031920.7515-5-kyle@kyleam.com>
Diffstat (limited to 'piem-eww.el')
-rw-r--r-- | piem-eww.el | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/piem-eww.el b/piem-eww.el index 5fb629b..62b7166 100644 --- a/piem-eww.el +++ b/piem-eww.el @@ -42,10 +42,11 @@ (defun piem-eww-get-mid () "Return the message ID of an EWW buffer." - (when (derived-mode-p 'eww-mode) - (when-let ((link (plist-get eww-data :url))) - (and (string-match piem-link-re link) - (match-string 2 link))))) + (when-let ((inbox (piem-eww-get-inbox)) + (inbox-url (piem-inbox-get :url inbox)) + (url (plist-get eww-data :url))) + (and (string-match (piem-message-link-re inbox-url) url) + (match-string 1 url)))) ;;;###autoload (define-minor-mode piem-eww-mode |