|
a/upmpd/upmpdutils.cxx |
|
b/upmpd/upmpdutils.cxx |
|
... |
|
... |
266 |
return ns;
|
266 |
return ns;
|
267 |
else
|
267 |
else
|
268 |
return it->second;
|
268 |
return it->second;
|
269 |
}
|
269 |
}
|
270 |
|
270 |
|
|
|
271 |
unordered_map<string, string>
|
|
|
272 |
diffmaps(const unordered_map<string, string>& old,
|
|
|
273 |
const unordered_map<string, string>& newer)
|
|
|
274 |
{
|
|
|
275 |
unordered_map<string, string> out;
|
|
|
276 |
|
|
|
277 |
for (unordered_map<string, string>::const_iterator it = newer.begin();
|
|
|
278 |
it != newer.end(); it++) {
|
|
|
279 |
unordered_map<string, string>::const_iterator ito = old.find(it->first);
|
|
|
280 |
if (ito == old.end() || ito->second.compare(it->second))
|
|
|
281 |
out[it->first] = it->second;
|
|
|
282 |
}
|
|
|
283 |
return out;
|
|
|
284 |
}
|
|
|
285 |
|
271 |
// Bogus didl fragment maker. We probably don't need a full-blown XML
|
286 |
// Bogus didl fragment maker. We probably don't need a full-blown XML
|
272 |
// helper here
|
287 |
// helper here
|
273 |
string didlmake(const MpdStatus& mpds, bool next)
|
288 |
string didlmake(const MpdStatus& mpds, bool next)
|
274 |
{
|
289 |
{
|
275 |
const unordered_map<string, string>& songmap =
|
290 |
const unordered_map<string, string>& songmap =
|