diff options
author | martianh <martianh@noreply.codeberg.org> | 2022-12-26 05:30:58 +0000 |
---|---|---|
committer | martianh <martianh@noreply.codeberg.org> | 2022-12-26 05:30:58 +0000 |
commit | 01ba30fd8649e4048ddd7d6cb3f644dd5d02edff (patch) | |
tree | 19c6a71d0b5b12ade04f1dcdb62de4a96fcfb2db /lisp/mastodon-toot.el | |
parent | 54273449e5fb07fcf6e600eb872b4fcc76b60130 (diff) | |
parent | 599cd053cdf4104c1739c40024a6586646a61eb4 (diff) |
Merge branch 'develop' into fix-two-spaces-in-reply
Diffstat (limited to 'lisp/mastodon-toot.el')
-rw-r--r-- | lisp/mastodon-toot.el | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/lisp/mastodon-toot.el b/lisp/mastodon-toot.el index 1917b7b..eab0dfd 100644 --- a/lisp/mastodon-toot.el +++ b/lisp/mastodon-toot.el @@ -610,13 +610,19 @@ To use the downloaded emoji, run `mastodon-toot--enable-custom-emoji'." (unless (file-directory-p mastodon-custom-emoji-dir) (make-directory mastodon-custom-emoji-dir nil)) ; no add parent (mapc (lambda (x) - (url-copy-file (alist-get 'url x) - (concat - mastodon-custom-emoji-dir - (alist-get 'shortcode x) - "." - (file-name-extension (alist-get 'url x))) - t)) + (let ((url (alist-get 'url x)) + (shortcode (alist-get 'shortcode x))) + ;; skip anything that contains unexpected characters + (when (and url shortcode + (string-match-p "^[a-zA-Z0-9-_]+$" shortcode) + (string-match-p "^[a-zA-Z]+$" (file-name-extension url))) + (url-copy-file url + (concat + mastodon-custom-emoji-dir + shortcode + "." + (file-name-extension url)) + t)))) custom-emoji) (message "Custom emoji for %s downloaded to %s" mastodon-instance-url |