aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/input/plugins/CurlInputPlugin.cxx9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/input/plugins/CurlInputPlugin.cxx b/src/input/plugins/CurlInputPlugin.cxx
index 01c3c6838..dc26e0aa2 100644
--- a/src/input/plugins/CurlInputPlugin.cxx
+++ b/src/input/plugins/CurlInputPlugin.cxx
@@ -955,11 +955,14 @@ CurlInputStream::Seek(InputPlugin::offset_type new_offset, int whence,
/* seek to EOF: simulate empty result; avoid
triggering a "416 Requested Range Not Satisfiable"
response */
+ mutex.lock();
return true;
}
- if (!InitEasy(error))
+ if (!InitEasy(error)) {
+ mutex.lock();
return false;
+ }
/* send the "Range" header */
@@ -970,8 +973,10 @@ CurlInputStream::Seek(InputPlugin::offset_type new_offset, int whence,
ready = false;
- if (!input_curl_easy_add_indirect(this, error))
+ if (!input_curl_easy_add_indirect(this, error)) {
+ mutex.lock();
return false;
+ }
mutex.lock();
WaitReady();