Skip to content
Snippets Groups Projects
Commit fc3312e6 authored by Attila Lendvai's avatar Attila Lendvai
Browse files

copy-sequence returns the number of bytes written

parent e6d5005b
No related branches found
No related tags found
No related merge requests found
......@@ -111,11 +111,13 @@ unless it's NIL, which means the system default."
"Reads data from INPUT and writes it to OUTPUT. Both INPUT and OUTPUT must
be streams, they will be passed to READ-SEQUENCE and WRITE-SEQUENCE and must have
compatible element-types."
(loop
:for bytes-read = (read-sequence buffer input)
:while (= bytes-read buffer-size)
:do (write-sequence buffer output)
:finally (progn
(write-sequence buffer output :end bytes-read)
(when finish-output
(finish-output output)))))
(let ((bytes-written 0))
(loop
:for bytes-read = (read-sequence buffer input)
:until (zerop bytes-read)
:do (progn
(write-sequence buffer output :end bytes-read)
(incf bytes-written bytes-read)))
(when finish-output
(finish-output output))
bytes-written))
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment