From fed8f1286378bf5c7792bee14cc52870158d3de9 Mon Sep 17 00:00:00 2001
From: Max Kellermann <max@musicpd.org>
Date: Mon, 14 Mar 2022 12:11:02 +0100
Subject: [PATCH] input/plugins/QobuzClient: pass std::string_view to
 QueryStringBuilder()

---
 src/input/plugins/QobuzClient.cxx | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/src/input/plugins/QobuzClient.cxx b/src/input/plugins/QobuzClient.cxx
index 48f8d8ecd..469860ea4 100644
--- a/src/input/plugins/QobuzClient.cxx
+++ b/src/input/plugins/QobuzClient.cxx
@@ -30,8 +30,9 @@ class QueryStringBuilder {
 	bool first = true;
 
 public:
-	QueryStringBuilder &operator()(std::string &dest, const char *name,
-				       const char *value) noexcept {
+	QueryStringBuilder &operator()(std::string &dest,
+				       std::string_view name,
+				       std::string_view value) noexcept {
 		dest.push_back(first ? '?' : '&');
 		first = false;
 
@@ -175,7 +176,7 @@ QobuzClient::MakeUrl(const char *object, const char *method,
 
 	QueryStringBuilder q;
 	for (const auto &[key, url] : query)
-		q(uri, key.c_str(), url.c_str());
+		q(uri, key, url);
 
 	q(uri, "app_id", app_id);
 	return uri;
@@ -196,7 +197,7 @@ QobuzClient::MakeSignedUrl(const char *object, const char *method,
 	std::string concatenated_query(object);
 	concatenated_query += method;
 	for (const auto &[key, url] : query) {
-		q(uri, key.c_str(), url.c_str());
+		q(uri, key, url);
 
 		concatenated_query += key;
 		concatenated_query += url;
@@ -205,13 +206,13 @@ QobuzClient::MakeSignedUrl(const char *object, const char *method,
 	q(uri, "app_id", app_id);
 
 	const auto request_ts = std::to_string(time(nullptr));
-	q(uri, "request_ts", request_ts.c_str());
+	q(uri, "request_ts", request_ts);
 	concatenated_query += request_ts;
 
 	concatenated_query += app_secret;
 
 	const auto md5_hex = MD5Hex({concatenated_query.data(), concatenated_query.size()});
-	q(uri, "request_sig", md5_hex);
+	q(uri, "request_sig", md5_hex.c_str());
 
 	return uri;
 }