diff options
author | paul.kim <paul.hyunil@lge.com> | 2017-11-11 13:49:22 +0900 |
---|---|---|
committer | Sebastian Dröge <sebastian@centricular.com> | 2018-01-19 11:40:07 +0200 |
commit | 129eecf0123b9ae467ee7033ec5b933941d73676 (patch) | |
tree | 5ff1dd29974971736d17ea55d4caaa6da6baada8 /ext | |
parent | 54f312644e5240d10e089cbd65c5e8633c9d1b05 (diff) |
souphttpsrc: Reset retry_count to 0 when GST_FLOW_FLUSHING
If a lot of seek method is called very quickly, sometimes data reading
and do_request occurs while seek flush event is occurring and error
occurs because retry_count
reaches to the max. Thus, reset retry_count if flush occurs after
do_request and read_buffer.
https://bugzilla.gnome.org/show_bug.cgi?id=790199
Diffstat (limited to 'ext')
-rw-r--r-- | ext/soup/gstsouphttpsrc.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/ext/soup/gstsouphttpsrc.c b/ext/soup/gstsouphttpsrc.c index 975692440..28642e359 100644 --- a/ext/soup/gstsouphttpsrc.c +++ b/ext/soup/gstsouphttpsrc.c @@ -1835,6 +1835,13 @@ done: goto retry; } } + + if (ret == GST_FLOW_FLUSHING) { + g_mutex_lock (&src->mutex); + src->retry_count = 0; + g_mutex_unlock (&src->mutex); + } + return ret; } |