aboutsummaryrefslogtreecommitdiffstats
path: root/src (unfollow)
Commit message (Collapse)AuthorFilesLines
2009-01-07pcm_utils: moved code to pcm_mix.cMax Kellermann6-93/+151
Moved the software mixing code (used by crossfading) to a separate library.
2009-01-07pcm_utils: moved code to pcm_volume.cMax Kellermann9-109/+171
Moved the software volume code to a separate library.
2009-01-07pcm_utils: export pcm_range()Max Kellermann2-14/+16
We are going to split the pcm_utils.c library, and pcm_range() will be useful for several sub libraries.
2009-01-07removed dlist.hMax Kellermann2-485/+0
Get rid of the non-portable Linux list library, part III (final).
2009-01-07curl: use GQueue instead of dlist.h for buffer listMax Kellermann1-69/+138
Get rid of the non-portable Linux list library, part II.
2009-01-07client: use GList instead of dlist.hMax Kellermann1-37/+47
Get rid of the non-portable Linux list library, part I.
2009-01-07input_curl: disable "seekable" when icy-metadata is enabledMax Kellermann1-1/+1
Fix a typo in the icy-metadata patch.
2009-01-05locate: fix strcmp() return value checkMax Kellermann1-1/+1
Yesterday's patch set changed tagItemFoundAndMatches() and moved the strcmp() return value into a bool, but forgot to add the ==0 check.
2009-01-05fix G_BYTE_ORDER checkMax Kellermann4-4/+4
"#ifdef G_BYTE_ORDER == G_BIG_ENDIAN" cannot work, of course.
2009-01-05configure.ac: use AC_CHECK_HEADERS to check for locale.hMax Kellermann1-2/+2
AC_CHECK_HEADERS defines HAVE_LOCALE_H, so we don't have to manually define HAVE_LOCALE.
2009-01-05use GLib byte order macrosMax Kellermann4-10/+11
2009-01-04tag: allocate space for null terminator in clear_non_printable()Max Kellermann1-3/+1
Use g_strndup() instead of g_memdup().
2009-01-04database: use stdboolMax Kellermann3-26/+27
Make db_load(), db_save() and db_check() return bool instead of int.
2009-01-04database: db_init() initializes library, does not updateMax Kellermann3-9/+25
For updating the database, directory_update_init() should be called explicitly.
2009-01-04stats: added stats_update()Max Kellermann4-7/+11
2009-01-04removed the "condition" libraryMax Kellermann3-124/+0
It's unused.
2009-01-04update: use notify.h instead of condition.hMax Kellermann1-12/+10
The notify library is easier to use, and has no disadvantages.
2009-01-04event_pipe: removed the unused function event_pipe_wait()Max Kellermann2-16/+4
2009-01-04don't exit after --create-dbMax Kellermann3-14/+2
Start the daemon after --create-db. This makes --create-db a flag which discards the old database and starts with a fresh one.
2009-01-04update: refresh stats when database update is finishedMax Kellermann1-0/+5
2009-01-04update: splitted reap_update_task()Max Kellermann1-17/+30
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.
2009-01-04initialize GError pointersMax Kellermann4-4/+4
GLib mandates that you initialize all GError objects with NULL prior to passing it.
2009-01-04path, tag: don't allocate GError for charset conversionMax Kellermann3-19/+7
Pass NULL instead of &error to g_convert(). We're not interested in the error object.
2009-01-04path: removed pfx_dir()Max Kellermann4-41/+10
Use GLib's g_build_filename() instead of pfx_dir().
2009-01-04renaming mixer.h to mixer_api.hViliam Mateicka6-7/+7
2009-01-04song: allocate the result of song_get_url()Max Kellermann13-85/+110
2009-01-04directory: added directory_is_root()Max Kellermann6-8/+18
directory_is_root() is cheaper than isRootDirectory(directory_get_path()).
2009-01-04mapper: allocate the result of map_fs_to_utf8()Max Kellermann3-11/+10
2009-01-04playlist: log errors during loadPlaylist()Max Kellermann3-5/+4
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.
2009-01-04playlist: use GLib loggingMax Kellermann1-21/+19
2009-01-04ls: renamed functions, no CamelCaseMax Kellermann6-18/+29
2009-01-04update: removed struct delete_dataMax Kellermann1-9/+3
The struct delete_data has only one member left and can be eliminated.
2009-01-04ls: removed hasMusicSuffix() and get_archive_by_suffix()Max Kellermann4-59/+39
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.
2009-01-04update: moved code to update_regular_file()Max Kellermann1-26/+35
2009-01-04song: removed duplicate '\n' checkMax Kellermann1-5/+2
Newline characters are already checked in skip_path() (update.c).
2009-01-04ls: include cleanupMax Kellermann3-9/+7
Don't include headers which are not used. Fix some includes in decoder_thread.c.
2009-01-04update: moved code to directory_exists(), fix typoMax Kellermann1-9/+18
Reverse the condition: delete directories which don't exist anymore. This typo caused a slowdown during partial database update.
2009-01-04playlist: use uri_has_scheme() instead of isRemoteUrl()Max Kellermann3-14/+13
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.
2009-01-04command: check URI scheme in "addid"Max Kellermann1-12/+22
Check if the URI scheme is supported by MPD, and print an error message if not. Optimize the checks in "add" and "playlistadd".
2009-01-04command: added variable "uri" to command handlersMax Kellermann1-20/+24
Don't work with argv[1], give it the better name "uri".
2009-01-04player_thread: fix cross-fading duplicate chunk bugMax Kellermann1-0/+8
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.
2009-01-03input_curl: enabled Icy-Metadata supportMax Kellermann2-12/+97
2009-01-03added library for parsing icy-metadataMax Kellermann3-1/+275
The icy_metadata will be used by the curl input_stream implementation.
2009-01-03input_stream: added tag() methodMax Kellermann6-78/+129
The tag() method reads a tag from the stream. This replaces the meta_name and meta_title attributes.
2009-01-03tag: added function tag_merge()Max Kellermann2-0/+55
tag_merges() merges the data from two tag objects into one.
2009-01-03decoder_api: moved code to do_send_tag(), free temporary tagMax Kellermann1-7/+17
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.
2009-01-03tag: revert g_strescape() patchMax Kellermann1-7/+56
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".
2009-01-03player: emit PLAYLIST event when stream tag changesMax Kellermann1-0/+7
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.
2009-01-03utils: removed unused functionsMax Kellermann4-112/+8
Removed all allocation functions, xwrite(), xread(), ARRAY_SIZE(). Those have been superseded by GLib.
2009-01-03event_pipe: use GLib loggingMax Kellermann1-2/+3