replace loop with find_if
loop is wrong anyway. It's missing a break; Signed-off-by: Rosen Penev <rosenp@gmail.com>
This commit is contained in:
parent
bedcf1cce5
commit
0f7a0b04ca
@ -258,12 +258,8 @@ ContentDirectoryService::getMetadata(UpnpClient_Handle hdl,
|
||||
if (code != UPNP_E_SUCCESS)
|
||||
throw FormatRuntimeError("UpnpSendAction() failed: %s",
|
||||
UpnpGetErrorMessage(code));
|
||||
const char *p = "";
|
||||
for (const auto &entry : responseData) {
|
||||
if (entry.first == "Result") {
|
||||
p = entry.second.c_str();
|
||||
}
|
||||
}
|
||||
auto it = std::find_if(responseData.begin(), responseData.end(), [](auto&& entry){ return entry.first == "Result"; });
|
||||
const char *p = it != responseData.end() ? it->second.c_str() : "";
|
||||
UPnPDirContent dirbuf;
|
||||
dirbuf.Parse(p);
|
||||
return dirbuf;
|
||||
|
Loading…
Reference in New Issue
Block a user