1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-01-02 11:21:42 +00:00

(jka-compr-partial-uncompress): Handle the case where

LEN reaches to or past the end of the data.
This commit is contained in:
Richard M. Stallman 1994-06-26 16:10:41 +00:00
parent d2287ded09
commit ee139ed38b

View File

@ -237,9 +237,7 @@ based on the filename itself and `jka-compr-compression-info-list'."
(defun jka-compr-partial-uncompress (prog message args infile beg len)
"Call program PROG with ARGS args taking input from INFILE.
Fourth and fifth args, BEG and LEN, specify which part of the output
to discard. All output is discarded unless it comes within LEN chars after
the BEGth char."
to keep: LEN chars starting BEG chars from the beginning."
(let* ((skip (/ beg jka-compr-dd-blocksize))
(prefix (- beg (* skip jka-compr-dd-blocksize)))
(count (and len (1+ (/ (+ len prefix) jka-compr-dd-blocksize))))
@ -267,10 +265,13 @@ the BEGth char."
(jka-compr-delete-temp-file err-file))
;; Delete the stuff after what we want, if there is any.
(and
len
(< (+ start prefix len) (point))
(delete-region (+ start prefix len) (point)))
;; Delete the stuff before what we want.
(delete-region start (+ start prefix))))