diff options
author | Kyle Meyer <kyle@kyleam.com> | 2020-08-16 21:33:41 -0400 |
---|---|---|
committer | Kyle Meyer <kyle@kyleam.com> | 2020-08-17 20:23:21 -0400 |
commit | 8f81b7705afbec27264b0fe45e585619af3f9fd6 (patch) | |
tree | 0b11b1d4a2118b612b9a885450c3a3352708f247 | |
parent | e37abb4e89952a919722237b5786102cf956a84e (diff) | |
download | piem-8f81b7705afbec27264b0fe45e585619af3f9fd6.tar.gz |
Extract logic from inject-thread-callback
An upcoming commit will use this same logic in another callback.
Message-Id: <20200817013343.15615-4-kyle@kyleam.com>
-rw-r--r-- | piem.el | 18 |
1 files changed, 12 insertions, 6 deletions
@@ -380,6 +380,16 @@ buffer." (setq piem--has-gunzip (executable-find "gunzip"))) piem--has-gunzip) +(defun piem--url-remove-header () + (goto-char (1+ url-http-end-of-headers)) + (delete-region (point-min) (point))) + +(defun piem--url-decompress () + (unless (= 0 (call-process-region nil nil "gunzip" nil t)) + (error "Decompressing t.mbox.gz failed")) + (delete-region (point) (point-max)) + (goto-char (point-min))) + (defun piem--write-mbox-to-maildir () (let ((n-messages 0)) (while (and (not (eobp)) @@ -414,13 +424,9 @@ buffer." (let ((error-status (plist-get status :error))) (if error-status (signal (car error-status) (cdr error-status)) - (goto-char (1+ url-http-end-of-headers)) - (delete-region (point-min) (point)) + (piem--url-remove-header) (unless message-only - (unless (= 0 (call-process-region nil nil "gunzip" nil t)) - (error "Decompressing t.mbox.gz failed")) - (delete-region (point) (point-max))) - (goto-char (point-min)) + (piem--url-decompress)) (let ((message-count (piem--write-mbox-to-maildir))) (message "%d message(s) for %s moved to %s" message-count mid piem-maildir-directory)) |