- 04 Jan, 2009 26 commits
-
-
Max Kellermann authored
The notify library is easier to use, and has no disadvantages.
-
Max Kellermann authored
-
Max Kellermann authored
Start the daemon after --create-db. This makes --create-db a flag which discards the old database and starts with a fresh one.
-
Max Kellermann authored
-
Max Kellermann authored
Handle the DELETE and UPDATE events in separate callbacks: song_delete_event() safely deletes a song, and update_finished_event() is called when database update is complete.
-
Max Kellermann authored
GLib mandates that you initialize all GError objects with NULL prior to passing it.
-
Max Kellermann authored
Pass NULL instead of &error to g_convert(). We're not interested in the error object.
-
Max Kellermann authored
Use GLib's g_build_filename() instead of pfx_dir().
-
Viliam Mateicka authored
-
Max Kellermann authored
-
Max Kellermann authored
directory_is_root() is cheaper than isRootDirectory(directory_get_path()).
-
Max Kellermann authored
-
Max Kellermann authored
Don't call command_error() if loading a song from the playlist fails. This may result in assertion failures, since command_error() may be called more than once.
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
The struct delete_data has only one member left and can be eliminated.
-
Max Kellermann authored
Determine the suffix manually, and use decoder_plugin_from_suffix() and archive_plugin_from_suffix() instead. This way, song_file_update_inarchive() can be optimized: it does not have to translate its path.
-
Max Kellermann authored
-
Max Kellermann authored
Newline characters are already checked in skip_path() (update.c).
-
Max Kellermann authored
Don't include headers which are not used. Fix some includes in decoder_thread.c.
-
Max Kellermann authored
Reverse the condition: delete directories which don't exist anymore. This typo caused a slowdown during partial database update.
-
Max Kellermann authored
For internal checks (i.e. not in command.c), we need to check whether an URI is in the databse, in the local file system or a remote URI with a scheme.
-
Max Kellermann authored
Check if the URI scheme is supported by MPD, and print an error message if not. Optimize the checks in "add" and "playlistadd".
-
Max Kellermann authored
Don't work with argv[1], give it the better name "uri".
-
Max Kellermann authored
libid3tag comes without a pkg-config file, and it is usually added by distribution packages. For those without .pc file, attempt to auto-detect the library with AC_CHECK_LIB.
-
Max Kellermann authored
When the decoder of the new song is not fast enough, the player thread has to wait for it for a moment. However the variable "nextChunk" was reset to -1 during that, making the next loop iteration assume that cross-fading has not begun yet. This patch overwrites it with "0" while waiting.
-
- 03 Jan, 2009 14 commits
-
-
Max Kellermann authored
-
Max Kellermann authored
The icy_metadata will be used by the curl input_stream implementation.
-
Max Kellermann authored
The tag() method reads a tag from the stream. This replaces the meta_name and meta_title attributes.
-
Max Kellermann authored
tag_merges() merges the data from two tag objects into one.
-
Max Kellermann authored
This patch fixes a minor memory leak: when decoder_tag() attempted to send a merged tag object (created by tag_add_stream_tags()), and was interrupted by a decoder command, it did not free the temporary merged tag object.
-
Max Kellermann authored
Don't use g_strescape(), because it escapes all non-ASCII characters. Add a new function which clears all non-printable characters, not just "newline".
-
Max Kellermann authored
Commit b3e2635a introduced a regression: when a stream tag was changed, the playlist version had to be updated. This was done in syncCurrentPlayerDecodeMetadata(), called by syncPlayerAndPlaylist(). After b3e2635a, this was not called anymore. Fix this by emitting PIPE_EVENT_PLAYLIST.
-
Max Kellermann authored
Removed all allocation functions, xwrite(), xread(), ARRAY_SIZE(). Those have been superseded by GLib.
-
Max Kellermann authored
-
Max Kellermann authored
xclose() aims to be the signal safe version of close(). However during cleanup, this isn't important.
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
If the state file cannot be read, for whatever reason, don't abort MPD. The state file isn't _that_ important.
-
Max Kellermann authored
-