summaryrefslogtreecommitdiff
path: root/lisp/gnus/yenc.el
diff options
context:
space:
mode:
authorMiles Bader <miles@gnu.org>2007-12-06 00:21:00 +0000
committerMiles Bader <miles@gnu.org>2007-12-06 00:21:00 +0000
commitb890d447fb56bfe9f2e4742eda4b3ab4b5f4b32a (patch)
treeb97d8b30984a8884b61d54b056a4aabf852ecbbe /lisp/gnus/yenc.el
parentf6e7ec024870e8ccaaed5bc2e0d92fde7554e16b (diff)
Merge from gnus--devo--0
Revision: emacs@sv.gnu.org/emacs--devo--0--patch-941
Diffstat (limited to 'lisp/gnus/yenc.el')
-rw-r--r--lisp/gnus/yenc.el19
1 files changed, 19 insertions, 0 deletions
diff --git a/lisp/gnus/yenc.el b/lisp/gnus/yenc.el
index 7550186b35e..7843f6a9aa0 100644
--- a/lisp/gnus/yenc.el
+++ b/lisp/gnus/yenc.el
@@ -55,6 +55,25 @@
191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207
208 209 210 211 212 213])
+(defun yenc-first-part-p ()
+ "Say whether the buffer contains the first part of a yEnc file."
+ (save-excursion
+ (goto-char (point-min))
+ (re-search-forward "^=ybegin part=1 " nil t)))
+
+(defun yenc-last-part-p ()
+ "Say whether the buffer contains the last part of a yEnc file."
+ (save-excursion
+ (goto-char (point-min))
+ (let (total-size end-size)
+ (when (re-search-forward "^=ybegin.*size=\\([0-9]+\\)" nil t)
+ (setq total-size (match-string 1)))
+ (when (re-search-forward "^=ypart.*end=\\([0-9]+\\)" nil t)
+ (setq end-size (match-string 1)))
+ (and total-size
+ end-size
+ (string= total-size end-size)))))
+
;;;###autoload
(defun yenc-decode-region (start end)
"Yenc decode region between START and END using an internal decoder."