SongSticker: add Database reference parameter
This commit is contained in:
parent
29072797ca
commit
9c637df77e
@ -133,7 +133,7 @@ handle_sticker_song(Client &client, int argc, char *argv[])
|
||||
argv[4],
|
||||
};
|
||||
|
||||
success = sticker_song_find(base_uri, data.name,
|
||||
success = sticker_song_find(*db, base_uri, data.name,
|
||||
sticker_song_find_print_cb, &data);
|
||||
if (!success) {
|
||||
command_error(client, ACK_ERROR_SYSTEM,
|
||||
|
@ -21,7 +21,6 @@
|
||||
#include "SongSticker.hxx"
|
||||
#include "StickerDatabase.hxx"
|
||||
#include "db/LightSong.hxx"
|
||||
#include "db/DatabaseGlue.hxx"
|
||||
#include "db/DatabasePlugin.hxx"
|
||||
#include "util/Error.hxx"
|
||||
|
||||
@ -95,15 +94,13 @@ sticker_song_find_cb(const char *uri, const char *value, void *user_data)
|
||||
}
|
||||
|
||||
bool
|
||||
sticker_song_find(const char *base_uri, const char *name,
|
||||
sticker_song_find(const Database &db, const char *base_uri, const char *name,
|
||||
void (*func)(const LightSong &song, const char *value,
|
||||
void *user_data),
|
||||
void *user_data)
|
||||
{
|
||||
struct sticker_song_find_data data;
|
||||
data.db = GetDatabase();
|
||||
assert(data.db != nullptr);
|
||||
|
||||
data.db = &db;
|
||||
data.func = func;
|
||||
data.user_data = user_data;
|
||||
|
||||
|
@ -25,8 +25,8 @@
|
||||
#include <string>
|
||||
|
||||
struct LightSong;
|
||||
struct Directory;
|
||||
struct sticker;
|
||||
class Database;
|
||||
|
||||
/**
|
||||
* Returns one value from a song's sticker record. The caller must
|
||||
@ -78,7 +78,7 @@ sticker_song_get(const LightSong &song);
|
||||
* failure
|
||||
*/
|
||||
bool
|
||||
sticker_song_find(const char *base_uri, const char *name,
|
||||
sticker_song_find(const Database &db, const char *base_uri, const char *name,
|
||||
void (*func)(const LightSong &song, const char *value,
|
||||
void *user_data),
|
||||
void *user_data);
|
||||
|
Loading…
Reference in New Issue
Block a user