aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMax Kellermann <max@duempel.org>2012-08-15 22:03:02 +0200
committerMax Kellermann <max@duempel.org>2012-08-15 23:02:00 +0200
commit4e1eb03287c1af889372ed4c63220a88d2032f78 (patch)
tree7a7ed59a73c6e7843b6c8c24e235abce23dc22b5
parentfcf0f8291dc23d5db329cd44119d69dde76238b2 (diff)
downloadmpd-4e1eb03287c1af889372ed4c63220a88d2032f78.tar.gz
mpd-4e1eb03287c1af889372ed4c63220a88d2032f78.tar.xz
mpd-4e1eb03287c1af889372ed4c63220a88d2032f78.zip
ProxyDatabase: obey visitor return values
-rw-r--r--src/db/ProxyDatabasePlugin.cxx19
1 files changed, 11 insertions, 8 deletions
diff --git a/src/db/ProxyDatabasePlugin.cxx b/src/db/ProxyDatabasePlugin.cxx
index 6211f5c74..68ba5a542 100644
--- a/src/db/ProxyDatabasePlugin.cxx
+++ b/src/db/ProxyDatabasePlugin.cxx
@@ -323,20 +323,23 @@ Visit(struct mpd_connection *connection, struct directory &parent,
break;
case MPD_ENTITY_TYPE_DIRECTORY:
- Visit(connection, parent, recursive,
- mpd_entity_get_directory(entity),
- visit_directory, visit_song, visit_playlist,
- error_r);
+ if (!Visit(connection, parent, recursive,
+ mpd_entity_get_directory(entity),
+ visit_directory, visit_song, visit_playlist,
+ error_r))
+ return false;
break;
case MPD_ENTITY_TYPE_SONG:
- Visit(parent, mpd_entity_get_song(entity), visit_song,
- error_r);
+ if (!Visit(parent, mpd_entity_get_song(entity),
+ visit_song, error_r))
+ return false;
break;
case MPD_ENTITY_TYPE_PLAYLIST:
- Visit(parent, mpd_entity_get_playlist(entity),
- visit_playlist, error_r);
+ if (!Visit(parent, mpd_entity_get_playlist(entity),
+ visit_playlist, error_r))
+ return false;
break;
}
}