From eeb8d0dbcdc213a430ce00057da061a86804fc7b Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Thu, 18 Sep 2014 17:22:31 +0200 Subject: db/proxy: support empty values in VisitUniqueTags() Workaround for assertion failure in PrintUniqueTag(). --- src/db/plugins/ProxyDatabasePlugin.cxx | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/db/plugins/ProxyDatabasePlugin.cxx b/src/db/plugins/ProxyDatabasePlugin.cxx index 8f9d12188..2bd04e3ad 100644 --- a/src/db/plugins/ProxyDatabasePlugin.cxx +++ b/src/db/plugins/ProxyDatabasePlugin.cxx @@ -779,6 +779,15 @@ ProxyDatabase::VisitUniqueTags(const DatabaseSelection &selection, (pair = mpd_recv_pair_tag(connection, tag_type2)) != nullptr) { TagBuilder tag; tag.AddItem(tag_type, pair->value); + + if (tag.IsEmpty()) + /* if no tag item has been added, then the + given value was not acceptable + (e.g. empty); forcefully insert an empty + tag in this case, as the caller expects the + given tag type to be present */ + tag.AddEmptyItem(tag_type); + result = visit_tag(tag.Commit(), error); mpd_return_pair(connection, pair); } -- cgit v1.2.3