diff --git a/src/input/BufferedInputStream.cxx b/src/input/BufferedInputStream.cxx index 9ebecc6ce..b171a1d31 100644 --- a/src/input/BufferedInputStream.cxx +++ b/src/input/BufferedInputStream.cxx @@ -22,7 +22,7 @@ #include <string.h> BufferedInputStream::BufferedInputStream(InputStreamPtr _input) - :InputStream(_input->GetURI(), _input->mutex), + :InputStream(_input->GetUriView(), _input->mutex), BufferingInputStream(std::move(_input)) { assert(IsEligible(GetInput())); diff --git a/src/input/InputStream.hxx b/src/input/InputStream.hxx index 9d03cd094..94b0b79a8 100644 --- a/src/input/InputStream.hxx +++ b/src/input/InputStream.hxx @@ -159,6 +159,10 @@ public: return uri.c_str(); } + std::string_view GetUriView() const noexcept { + return uri; + } + /** * Check for errors that may have occurred in the I/O thread. * Throws std::runtime_error on error. diff --git a/src/input/ProxyInputStream.cxx b/src/input/ProxyInputStream.cxx index 9afa71370..9a0cb47d6 100644 --- a/src/input/ProxyInputStream.cxx +++ b/src/input/ProxyInputStream.cxx @@ -23,7 +23,7 @@ #include <utility> ProxyInputStream::ProxyInputStream(InputStreamPtr _input) noexcept - :InputStream(_input->GetURI(), _input->mutex), + :InputStream(_input->GetUriView(), _input->mutex), input(std::move(_input)) { assert(input);