Commit message (Collapse) | Author | Files | Lines | ||
---|---|---|---|---|---|
2014-02-03 | SongLoader: new class that merges duplicate code | Max Kellermann | 1 | -4/+4 | |
There was quite a lot of duplicate code for loading DetachedSong objects, with different semantics for "securely" loading local files. | |||||
2014-01-24 | Input*: move to input/ | Max Kellermann | 1 | -1/+1 | |
2014-01-23 | playlist/*: move to playlist/plugins/ | Max Kellermann | 1 | -0/+0 | |
2014-01-21 | PlaylistSong: modify the given song object in-place | Max Kellermann | 1 | -3/+4 | |
Reduce bloat. | |||||
2014-01-13 | copyright year 2014 | Max Kellermann | 1 | -1/+1 | |
2014-01-09 | DetachedSong: fork of struct Song | Max Kellermann | 1 | -5/+5 | |
From now on, struct Song will be used by the database only, and DetachedSong will be used by everybody else. DetachedSong is easier to use, but Song has lower overhead. | |||||
2013-12-05 | fs/Traits: split PathTraits type into PathTraitsFS and PathTraitsUTF8 | Denis Krjuchkov | 1 | -1/+1 | |
2013-11-28 | include cleanup using iwyu | Max Kellermann | 1 | -1/+0 | |
2013-10-28 | player_control: rename to PlayerControl | Max Kellermann | 1 | -2/+2 | |
2013-10-23 | input_stream: rename struct to InputStream | Max Kellermann | 1 | -1/+1 | |
2013-10-21 | GetBaseUTF8 | Max Kellermann | 1 | -12/+9 | |
2013-10-20 | PlaylistError: convert playlist_result to a strictly-typed enum | Max Kellermann | 1 | -7/+7 | |
2013-10-19 | *: use references instead of pointers | Max Kellermann | 1 | -3/+3 | |
2013-10-17 | InputStream: use int64_t instead of goffset | Max Kellermann | 1 | -0/+2 | |
Decouple some more from GLib. | |||||
2013-10-17 | thread/{Cond,Mutex}: use "class" instead of "typedef" | Max Kellermann | 1 | -0/+1 | |
Allows forward-declaration. | |||||
2013-10-02 | Playlist*: use nullptr instead of NULL | Max Kellermann | 1 | -5/+5 | |
2013-09-05 | PlaylistPlugin: add interface SongEnumerator | Max Kellermann | 1 | -6/+7 | |
Replaces struct playlist_provider. | |||||
2013-09-05 | InputLegacy: move functions to the input_stream class | Max Kellermann | 1 | -2/+2 | |
2013-09-03 | input_stream.h: rename to InputLegacy.hxx | Max Kellermann | 1 | -1/+1 | |
2013-07-28 | song: convert header to C++ | Max Kellermann | 1 | -7/+4 | |
2013-01-27 | DecoderControl, InputStream: use Mutex/Cond instead of GMutex/GCond | Max Kellermann | 1 | -9/+3 | |
2013-01-27 | playlist/*: convert to C++ | Max Kellermann | 1 | -1/+1 | |
2013-01-07 | Playlist: convert functions to methods | Max Kellermann | 1 | -1/+1 | |
2013-01-07 | decoder_api.h, ...: add "extern C" | Max Kellermann | 1 | -1/+1 | |
2013-01-04 | playlist: convert to C++ | Max Kellermann | 1 | -1/+1 | |
2013-01-02 | playlist_{any,song,queue}: convert to C++ | Max Kellermann | 1 | -4/+7 | |
2012-08-16 | DatabasePlugin: add method ReturnSong() | Max Kellermann | 1 | -4/+2 | |
Allow the plugin to allocate the GetSong() return value. | |||||
2012-02-09 | playlist_queue: add start/end_index parameters | Max Kellermann | 1 | -2/+14 | |
2011-09-16 | input_stream: non-blocking I/O | Max Kellermann | 1 | -2/+12 | |
Add GMutex, GCond attributes which will be used by callers to conditionally wait on the stream. Remove the (now-useless) plugin method buffer(), wait on GCond instead. Lock the input_stream before each method call. Do the same with the playlist plugins. | |||||
2011-09-11 | playlist: move enum playlist_result to playlist_error.h | Max Kellermann | 1 | -0/+1 | |
Reduce header dependencies. | |||||
2011-01-29 | copyright year 2011 | Max Kellermann | 1 | -1/+1 | |
2011-01-10 | player_control: removed the global variable "pc" | Max Kellermann | 1 | -4/+7 | |
Allocate a player_control object where needed, and pass it around. Each "client" object is associated with a "player_control" instance. This prepares multi-player support. | |||||
2010-12-23 | playlist_song: add flag "secure" | Max Kellermann | 1 | -4/+4 | |
Optionally allow all local files. "Insecure" mode is used for printing playlists. | |||||
2010-06-25 | playlist_queue: use playlist_open_any() | Max Kellermann | 1 | -48/+2 | |
2010-06-25 | playlist_queue: simplify error handler | Max Kellermann | 1 | -9/+8 | |
Return early on error, save one level of indent. | |||||
2010-06-01 | playlist_list: playlist_list_open_path() returns input_stream | Max Kellermann | 1 | -1/+6 | |
Memory leak fix. The input_stream object passed to playlist_list_open_stream_suffix() must be closed by the caller - this however never happens in playlist_list_open_path(), because it does not return it to the caller. | |||||
2010-02-08 | playlist_queue: moved code to playlist_mapper.c | Max Kellermann | 1 | -70/+6 | |
2010-02-08 | playlist_queue: moved check_translate_song() to playlist_song.c | Max Kellermann | 1 | -118/+2 | |
2010-01-06 | playlist_queue: convert absolute paths | Max Kellermann | 1 | -4/+16 | |
Accept absolute paths if they point into the music directory. | |||||
2010-01-06 | playlist_queue: use the "uri" variable earlier | Max Kellermann | 1 | -6/+7 | |
Preparation for the next patch. | |||||
2010-01-01 | input_stream: return allocated input_stream objects | Max Kellermann | 1 | -12/+9 | |
Major API redesign: don't let the caller allocate the input_stream object. Let each input plugin allocate its own (derived/extended) input_stream pointer. The "data" attribute can now be removed, and all input plugins simply cast the input_stream pointer to their own structure (with an "struct input_stream base" as the first attribute). | |||||
2009-12-31 | Update copyright notices. | Avuton Olrich | 1 | -1/+1 | |
2009-12-27 | playlist_queue: resolve relative URIs, database lookup | Max Kellermann | 1 | -17/+114 | |
Prepend the playlist's base URI to relative song URIs. Look up songs in the database (if the URI refers to a local song file). Merge existing database metadata with metadata from the playlist plugin. | |||||
2009-12-27 | playlist_queue: load playlists from music directory | Max Kellermann | 1 | -4/+36 | |
Try the playlist directory first, and if that file does not exist, try the same relative path within the music directory. | |||||
2009-12-27 | playlist_queue: pass const string to playlist_open_path_into_queue() | Max Kellermann | 1 | -1/+1 | |
2009-12-26 | playlist_queue: try open by URI first | Max Kellermann | 1 | -10/+21 | |
If that fails, try opening the file as a stream. | |||||
2009-12-15 | input_stream: return errors with GError | Max Kellermann | 1 | -2/+10 | |
2009-11-12 | include config.h in all sources | Max Kellermann | 1 | -0/+1 | |
After we've been hit by Large File Support problems several times in the past week (which only occur on 32 bit platforms, which I don't have), this is yet another attempt to fix the issue. | |||||
2009-11-06 | playlist_queue: use playlist plugins to load from playlist_directory | Max Kellermann | 1 | -0/+33 | |
This patch allows the client to load a playlist file from the playlist directory with a plugin. This can be used with the "load" command, but the client has to pass the file name including the suffix. We will probably use the music directory in the future, to support playlist files inside the music directory. | |||||
2009-11-06 | playlist_queue: moved code to playlist_open_remote_into_queue() | Max Kellermann | 1 | -5/+12 | |