New Upstream Release - cl-chunga
Ready changes
Summary
Merged new upstream version: 20220906.gite7dc536 (was: 20220222.git7836609).
Resulting package
Built on 2023-06-10T21:40 (took 12m11s)
The resulting binary packages can be installed (if you have the apt repository enabled) by running one of:
apt install -t fresh-releases cl-chunga
Diff
diff --git a/debian/changelog b/debian/changelog
index 85b74a4..f53f10a 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,8 +1,12 @@
-cl-chunga (20220222.git7836609-2) UNRELEASED; urgency=medium
+cl-chunga (20220906.gite7dc536-1) UNRELEASED; urgency=medium
+ [ Sébastien Villemot ]
* Remove myself from Uploaders
- -- Sébastien Villemot <sebastien@debian.org> Sat, 10 Jun 2023 13:44:32 +0200
+ [ Debian Janitor ]
+ * New upstream release.
+
+ -- Sébastien Villemot <sebastien@debian.org> Sat, 10 Jun 2023 21:28:55 -0000
cl-chunga (20220222.git7836609-1) unstable; urgency=medium
diff --git a/input.lisp b/input.lisp
index bed1b13..f5f89a6 100644
--- a/input.lisp
+++ b/input.lisp
@@ -80,6 +80,8 @@ something in the buffer. Otherwise we poll the underlying stream."
(cond ((chunked-stream-input-chunking-p stream)
(or (chunked-input-available-p stream)
(fill-buffer stream)))
+ ((eq (chunked-input-stream-eof-after-last-chunk stream) :eof)
+ nil)
(t (listen (chunked-stream-stream stream)))))
(defmethod fill-buffer ((stream chunked-input-stream))
@@ -137,6 +139,8 @@ extensions) and returns the size."
(slot-value stream 'chunk-trailers) (with-character-stream-semantics
(read-http-headers inner-stream))
input-limit 0)
+ (when (chunked-input-stream-eof-after-last-chunk stream)
+ (setf (chunked-input-stream-eof-after-last-chunk stream) :eof))
;; return NIL
(return-from fill-buffer))
((> chunk-size (length input-buffer))
@@ -152,7 +156,10 @@ extensions) and returns the size."
"Reads one byte from STREAM. Checks the chunk buffer first, if
input chunking is enabled. Re-fills buffer is necessary."
(unless (chunked-stream-input-chunking-p stream)
- (return-from stream-read-byte (read-byte (chunked-stream-stream stream) nil :eof)))
+ (return-from stream-read-byte
+ (if (eq (chunked-input-stream-eof-after-last-chunk stream) :eof)
+ :eof
+ (read-byte (chunked-stream-stream stream) nil :eof))))
(unless (chunked-input-available-p stream)
(unless (fill-buffer stream)
(return-from stream-read-byte :eof)))
@@ -167,7 +174,9 @@ it until enough data was read. Works directly on the underlying
stream if input chunking is off."
(unless (chunked-stream-input-chunking-p stream)
(return-from stream-read-sequence
- (read-sequence sequence (chunked-stream-stream stream) :start start :end end)))
+ (if (eq (chunked-input-stream-eof-after-last-chunk stream) :eof)
+ 0
+ (read-sequence sequence (chunked-stream-stream stream) :start start :end end))))
(loop
(when (>= start end)
(return-from stream-read-sequence start))
diff --git a/packages.lisp b/packages.lisp
index b2afd3d..c2eb731 100644
--- a/packages.lisp
+++ b/packages.lisp
@@ -64,5 +64,6 @@
:syntax-error
:token-char-p
:trim-whitespace
- :with-character-stream-semantics))
+ :with-character-stream-semantics
+ :chunked-input-stream-eof-after-last-chunk))
diff --git a/streams.lisp b/streams.lisp
index 280867d..4867c4d 100644
--- a/streams.lisp
+++ b/streams.lisp
@@ -67,7 +67,11 @@ might be encountered at the end of a chunked stream.")
:documentation "Whether we expect to see
CRLF before we can read the next chunk-size header part from the
stream. \(This will actually be the CRLF from the end of the
-last chunk-data part.)"))
+last chunk-data part.)")
+ (signal-eof :initform nil
+ :accessor chunked-input-stream-eof-after-last-chunk
+ :documentation "Return EOF after the last chunk instead
+of simply switching chunking off."))
(:documentation "A chunked stream is of this type if its
underlying stream is an input stream. This is a subtype of
CHUNKED-STREAM."))
@@ -128,4 +132,4 @@ binary stream."
'chunked-input-stream)
((output-stream-p stream)
'chunked-output-stream))
- :real-stream stream))
\ No newline at end of file
+ :real-stream stream))
Debdiff
File lists identical (after any substitutions)
No differences were encountered in the control files