Commit message (Collapse) | Author | Files | Lines | ||
---|---|---|---|---|---|
2013-10-30 | *: update copyright year to 2013 | Max Kellermann | 1 | -1/+1 | |
2013-10-29 | DatabaseSelection: use std::string | Max Kellermann | 1 | -2/+2 | |
2013-10-20 | TagType: rename enum tag_type to TagType | Max Kellermann | 1 | -1/+1 | |
2013-10-19 | *: use references instead of pointers | Max Kellermann | 1 | -2/+2 | |
2013-10-19 | *: use nullptr instead of NULL | Max Kellermann | 1 | -8/+8 | |
2013-10-17 | fs/Path: rename to AllocatedPath | Max Kellermann | 1 | -1/+1 | |
The new class Path only holds a string pointer without being responsible for allocation/deallocation. The FileSystem.hxx library accepts Path arguments instead of AllocatedPath, to avoid forcing callers to allocate another string object. | |||||
2013-10-15 | Client, ...: remove unnecessary glib.h include | Max Kellermann | 1 | -2/+0 | |
2013-10-02 | Log: new logging library API | Max Kellermann | 1 | -4/+5 | |
Prepare to migrate away from GLib. Currently, we're still using GLib as a backend. | |||||
2013-10-02 | filesystem/Path: use std::string | Max Kellermann | 1 | -2/+1 | |
2013-10-02 | Listen, ...: add missing includes | Max Kellermann | 1 | -0/+2 | |
2013-09-05 | conf.h: remove obsolete header | Max Kellermann | 1 | -1/+1 | |
Use only ConfigData.hxx in plugin sources to reduce header dependencies. | |||||
2013-09-04 | util/Error: new error passing library | Max Kellermann | 1 | -70/+53 | |
Replaces GLib's GError. | |||||
2013-08-10 | db_error: convert to C++ | Max Kellermann | 1 | -1/+1 | |
2013-08-07 | ConfigPath: return a Path object | Max Kellermann | 1 | -12/+3 | |
Migrate all callers to use Path directly, instead of doing the conversion in each caller. | |||||
2013-08-04 | *: use gcc.h macros instead of GLib | Max Kellermann | 1 | -2/+2 | |
2013-08-04 | DatabasePlugin: pass config_param reference | Max Kellermann | 1 | -3/+3 | |
2013-07-28 | song: convert header to C++ | Max Kellermann | 1 | -4/+4 | |
2013-02-02 | SimpleDatabasePlugin: use file system API, log in UTF-8 | Denis Krjuchkov | 1 | -25/+23 | |
2013-01-28 | Path::FromUTF8() returns nulled instance on error, add error handling where ↵ | Denis Krjuchkov | 1 | -0/+6 | |
required | |||||
2013-01-18 | Path: new class "Path" wraps filesystem path strings | Max Kellermann | 1 | -2/+3 | |
2013-01-07 | decoder_api.h, ...: add "extern C" | Max Kellermann | 1 | -3/+0 | |
2013-01-03 | TextFile: convert to a class | Max Kellermann | 1 | -7/+4 | |
2013-01-03 | Directory: rename struct directory to Directory | Max Kellermann | 1 | -4/+4 | |
2013-01-02 | Directory: turn functions to methods | Max Kellermann | 1 | -12/+10 | |
2013-01-02 | Directory: make the header C++ only | Max Kellermann | 1 | -2/+1 | |
2013-01-02 | db_lock: convert to C++ | Max Kellermann | 1 | -2/+2 | |
2013-01-02 | db_save, state_file: convert to C++ | Max Kellermann | 1 | -1/+1 | |
2012-09-05 | db/SimpleDatabasePlugin: fix memory leak in Visit() | Max Kellermann | 1 | -7/+11 | |
When visiting a song, GetSong() was called, but this object was never returned by calling ReturnSong(). This patch locks the database only once in Visit() and passes the original song object to the visitor, avoiding the copy. | |||||
2012-09-05 | db_lock: add C++ helper class ScopeDatabaseLock | Max Kellermann | 1 | -11/+6 | |
2012-08-29 | SongFilter: convert to a C++ class | Max Kellermann | 1 | -1/+1 | |
2012-08-29 | DatabaseSelection: add method Match() | Max Kellermann | 1 | -2/+1 | |
2012-08-29 | locate: rename to SongFilter.cxx | Max Kellermann | 1 | -1/+1 | |
2012-08-16 | DatabasePlugin: add method ReturnSong() | Max Kellermann | 1 | -0/+20 | |
Allow the plugin to allocate the GetSong() return value. | |||||
2012-08-15 | DatabasePlugin: add method GetStats() | Max Kellermann | 1 | -0/+7 | |
Optimize the ProxyDatabase by invoking "stats" on the peer, instead of visiting all songs. | |||||
2012-08-15 | DatabasePlugin: add method VisitUniqueTags() | Max Kellermann | 1 | -0/+11 | |
Optimize the ProxyDatabase by invoking "list" on the peer, instead of visiting all songs. | |||||
2012-08-15 | db_visitor: delete obsolete header | Max Kellermann | 1 | -1/+0 | |
2012-08-08 | DatabaseSelection: add "match" attribute | Max Kellermann | 1 | -2/+5 | |
Let the database plugin do the match. | |||||
2012-08-07 | db_selection: rename to DatabaseSelection | Max Kellermann | 1 | -2/+2 | |
2012-08-07 | Database{Plugin,Visitor}: pass references | Max Kellermann | 1 | -7/+7 | |
2012-08-02 | DatabasePlugin: make Visit() const | Max Kellermann | 1 | -2/+2 | |
2012-08-01 | db_plugin: convert to C++ | Max Kellermann | 1 | -142/+100 | |
2012-07-10 | require GLib 2.16 | Max Kellermann | 1 | -1/+0 | |
GLib 2.16 was released more than 4 years ago. Let's remove some cruft from the glib_compat.h header, and avoid new cruft to it. | |||||
2012-02-02 | directory: require the caller to lock the db_mutex | Max Kellermann | 1 | -2/+11 | |
Reduce the number of lock/unlock cycles, and make database handling safer. | |||||
2012-01-24 | directory: replace dirvec with doubly linked list | Max Kellermann | 1 | -2/+6 | |
Random access is not needed, and a linked list is easier to manage: we don't need to (re-)allocate the pointer array. | |||||
2012-01-24 | directory: simplify constructors and clarify API documentation | Max Kellermann | 1 | -2/+2 | |
Pass only the "name" to a directory, instead of the full (relative) path. | |||||
2012-01-12 | db/simple: pass the correct GError pointer | Max Kellermann | 1 | -1/+1 | |
2011-09-13 | db_plugin: add method visit() | Max Kellermann | 1 | -0/+41 | |
2011-09-13 | db_plugin: add method get_song() | Max Kellermann | 1 | -0/+17 | |
New db_get_song() implementation. | |||||
2011-09-10 | db_plugin: introducing a plugin API for the song database | Max Kellermann | 1 | -0/+287 | |
First draft, not really pluggable currently - hard-coded to use the "simple" plugin, and calls several of its internal functions. The API is very simple currently, all searches are still performed over the root "directory" object. Future changes to the API will move those search implementations into the plugin, to allow more efficient implementations, or implementations that don't have the whole tree in memory all the time. |