diff options
author | Lars Ingebrigtsen <larsi@gnus.org> | 2019-05-15 07:12:26 +0200 |
---|---|---|
committer | Lars Ingebrigtsen <larsi@gnus.org> | 2019-05-15 07:12:26 +0200 |
commit | 4f1df40db36b221e7842bd75d6281922dcb268ee (patch) | |
tree | c514769342774a9a23fb2bf63eb24ef53d8774ce /lisp/url | |
parent | 15bd081ce608c9ebdd379dccc728618664d458a6 (diff) | |
download | emacs-4f1df40db36b221e7842bd75d6281922dcb268ee.tar.gz |
Fix obscure HTTP chunked parsing problem
* lisp/url/url-http.el
(url-http-chunked-encoding-after-change-function): Ensure that we
parse the entire initial chunked header as the length (bug#35658).
Diffstat (limited to 'lisp/url')
-rw-r--r-- | lisp/url/url-http.el | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/lisp/url/url-http.el b/lisp/url/url-http.el index 03b863b69a8..48e29987a51 100644 --- a/lisp/url/url-http.el +++ b/lisp/url/url-http.el @@ -1084,6 +1084,12 @@ the end of the document." ;; need to spin some more. (url-http-debug "Did not see start of chunk @ %d!" (point)) (setq read-next-chunk nil)) + ;; The data we got may have started in the middle of the + ;; initial chunk header, so move back to the start of the + ;; line and re-compute. + (when (= url-http-chunked-counter 0) + (beginning-of-line) + (looking-at regexp)) (add-text-properties (match-beginning 0) (match-end 0) (list 'start-open t 'end-open t |