souphttpsrc: Fix seeking back to 0

This is a regression introduced by "03db374 - souphttpsrc: retry
request on early termination from the server"

The problem was that when seeking back to 0, we would not end up calling
add_range_header() which in addition to adding range headers *ALSO* sets
the read_position to the requested one.

This would result in a wide variety of later failures, like reading
again and again instead of stopping properly.
This commit is contained in:
Edward Hervey 2017-11-08 16:34:01 +01:00 committed by Edward Hervey
parent 5dd39d8946
commit 770bb07f30

View file

@ -1582,6 +1582,12 @@ gst_soup_http_src_do_request (GstSoupHTTPSrc * src, const gchar * method)
src->stop_position); src->stop_position);
} }
/* add_range_header() has the side effect of setting read_position to
* the requested position. This *needs* to be set regardless of having
* a message or not. Failure to do so would result in calculation being
* done with stale/wrong read position */
src->read_position = src->request_position;
if (!src->msg) { if (!src->msg) {
if (!gst_soup_http_src_build_message (src, method)) { if (!gst_soup_http_src_build_message (src, method)) {
return GST_FLOW_ERROR; return GST_FLOW_ERROR;