aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/db/plugins/ProxyDatabasePlugin.cxx9
1 files changed, 9 insertions, 0 deletions
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);
}