Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | playlist: added CUE playlist plugin | Max Kellermann | 2009-12-16 | 3 | -0/+166 |
| | | | | | | This plugin is the groundwork for MPD's future generic CUE sheet support. That's not complete yet, e.g. there is no way for a playlist plugin to address an arbitrary position within a music file. | ||||
* | playlist_list: support URI suffix match | Max Kellermann | 2009-12-16 | 1 | -2/+54 |
| | | | | When no plugin matches the URI scheme, try the file name suffix. | ||||
* | playlist_list: check if open method is present | Max Kellermann | 2009-12-16 | 1 | -2/+6 |
| | | | | | Use open_uri() / open_stream() only after checking that they are implemented. | ||||
* | cue_tag: added song duration support | Max Kellermann | 2009-12-16 | 1 | -2/+10 |
| | | | | | Get duration from track_get_length(). | ||||
* | cue_tag: check cd_get_track()!=NULL | Max Kellermann | 2009-12-16 | 1 | -3/+5 |
| | |||||
* | cue_tag: added function cue_tag() | Max Kellermann | 2009-12-16 | 2 | -17/+29 |
| | | | | Merge code from cue_tag_file() and cue_tag_string(). | ||||
* | cue_tag: merged code into cue_tag_merge() | Max Kellermann | 2009-12-16 | 1 | -22/+18 |
| | |||||
* | cue_tag: pass "const" string to cue_tag_string() | Max Kellermann | 2009-12-16 | 2 | -2/+2 |
| | |||||
* | cue_tag: changed runtime checks to assertions | Max Kellermann | 2009-12-16 | 1 | -14/+9 |
| | | | | It's illegal to pass NULL here. This should not be ignored silently. | ||||
* | cue_tag: fixed indent and code style | Max Kellermann | 2009-12-16 | 2 | -78/+43 |
| | |||||
* | cue_tag: tag_new() cannot fail | Max Kellermann | 2009-12-16 | 1 | -22/+10 |
| | | | | Removed the NULL check. | ||||
* | cue_tag: include cleanup | Max Kellermann | 2009-12-16 | 2 | -2/+5 |
| | |||||
* | archive_plugin: use GError in the open() method | Max Kellermann | 2009-12-16 | 7 | -14/+23 |
| | |||||
* | input/archive: check for archive_file_open() errors | Max Kellermann | 2009-12-16 | 1 | -0/+2 |
| | | | | | This fixes a NULL pointer dereference in case of archive plugin failure. | ||||
* | archive_plugin: wrap method calls | Max Kellermann | 2009-12-16 | 8 | -12/+132 |
| | | | | | Make archive_file a "real" struct, extended by all plugins. Add the plugin pointer to it. Wrap all method calls in functions. | ||||
* | archive_plugin: pass const string to method open() | Max Kellermann | 2009-12-16 | 4 | -4/+4 |
| | |||||
* | archive: added a C header for each plugin | Max Kellermann | 2009-12-16 | 7 | -4/+81 |
| | | | | | Moved the archive plugin "extern" declarations into each plugin header. | ||||
* | archive/bz2: removed the bz2_context typedef | Max Kellermann | 2009-12-16 | 1 | -13/+13 |
| | | | | Use the raw struct name instead. | ||||
* | archive/bz2: renamed archive sources and plugin variables | Max Kellermann | 2009-12-16 | 2 | -3/+3 |
| | |||||
* | archive/iso: renamed plugin to "iso9660" | Max Kellermann | 2009-12-16 | 2 | -37/+47 |
| | | | | Based on libiso9660. | ||||
* | archive/bz2: use g_path_get_basename() | Max Kellermann | 2009-12-16 | 1 | -10/+1 |
| | | | | | Use g_path_get_basename() instead of manually filtering the path name. Big advantage: g_path_get_basename() cannot fail. | ||||
* | updated mp4ff decoder about input_stream_seek | Alam Arias | 2009-12-16 | 1 | -2/+2 |
| | |||||
* | input_stream: return errors with GError | Max Kellermann | 2009-12-15 | 32 | -160/+378 |
| | |||||
* | encoder/flac: fix write callback prototype for libFLAC 1.1.2 | Max Kellermann | 2009-12-15 | 1 | -1/+7 |
| | |||||
* | decoder_internal: decoder_input_buffer() returns bool | Max Kellermann | 2009-12-15 | 1 | -4/+4 |
| | | | | | | This fixes a regression: a boolean value was returned from decoder_input_buffer(), but the caller chose to do a "<= 0" comparison. | ||||
* | input/archive: use g_path_is_absolute() | Max Kellermann | 2009-12-15 | 1 | -1/+1 |
| | | | | | .. instead of manually checking pathname[0]=='/'. g_path_is_absolute() is portable. | ||||
* | archive/bz2: simplified error handling, short read | Max Kellermann | 2009-12-15 | 1 | -34/+23 |
| | | | | | Don't attempt to fill the whole buffer in the read() method, return whatever libbz2 provides with the first successful BZ2_bzDecompress(). | ||||
* | archive/bz2: no CamelCase | Max Kellermann | 2009-12-15 | 1 | -11/+10 |
| | |||||
* | archive/zzip: removed the "zip_context" typedef | Max Kellermann | 2009-12-15 | 1 | -11/+11 |
| | | | | Use the raw struct name. | ||||
* | archive/zip: renamed plugin to "zzip" | Max Kellermann | 2009-12-15 | 2 | -31/+31 |
| | | | | This plugin is based on libzzip. | ||||
* | Merge branch 'v0.15.x' | Max Kellermann | 2009-12-15 | 5 | -4/+15 |
|\ | | | | | | | | | | | | | | | Conflicts: src/archive/bz2_plugin.c src/archive_api.h src/input/file_input_plugin.c test/run_input.c | ||||
| * | iso, zip: fixed memory leak in destructor | Max Kellermann | 2009-12-15 | 2 | -2/+4 |
| | | | | | | | | Free the "context" pointer in the method archive_plugin.close(). | ||||
| * | archive: close archive when stream is closed | Max Kellermann | 2009-12-15 | 4 | -0/+9 |
| | | | | | | | | | | | | | | | | Fixes a memory leak: the "archive" input plugin opens the archive, but never closes it. This patch moves the responsibility for doing that to archive_plugin.open_stream(). This is an slight internal API change, but it is the simplest and least intrusive fix for the memory leak. | ||||
| * | archive/bz2: removed NULL check before g_free() | Max Kellermann | 2009-12-15 | 1 | -2/+2 |
| | | | | | | | | g_free(NULL) is allowed. | ||||
| * | input/archive: close the archive file on error | Max Kellermann | 2009-12-15 | 1 | -0/+1 |
| | | | | | | | | Fixed memory leak in error handler. | ||||
| * | input/file: don't fall back to parent directory | Max Kellermann | 2009-12-15 | 1 | -18/+3 |
| | | | | | | | | | | This code has never made any sense, and has broken some of the archive plugin. | ||||
* | | input/file: don't fall back to parent directory | Max Kellermann | 2009-12-15 | 1 | -18/+3 |
| | | | | | | | | | | This code has never made any sense, and has broken some of the archive plugin. | ||||
* | | archive_api.h: moved struct archive_plugin to archive_plugin.h | Max Kellermann | 2009-12-15 | 4 | -61/+89 |
| | | |||||
* | | archive_list: don't include archive_api.h | Max Kellermann | 2009-12-15 | 2 | -2/+1 |
| | | | | | | | | Use struct forward declarations. | ||||
* | | archive_list: iterate with NULL check | Max Kellermann | 2009-12-15 | 1 | -12/+6 |
| | | | | | | | | Don't use num_archive_plugins. | ||||
* | | archive/bz2: bz2_fillbuffer() returns bool | Max Kellermann | 2009-12-15 | 1 | -5/+6 |
| | | |||||
* | | archive/bz2: fixed indentation | Max Kellermann | 2009-12-15 | 1 | -15/+22 |
| | | |||||
* | | archive/bz2: g_malloc() cannot fail | Max Kellermann | 2009-12-15 | 1 | -4/+2 |
| | | |||||
* | | fixed several gcc warnings on unused debug variables | Max Kellermann | 2009-12-14 | 3 | -2/+3 |
| | | |||||
* | | decoder/mikmod: fixed gcc uninitialized warning | Max Kellermann | 2009-12-14 | 1 | -2/+1 |
| | | | | | | | | Removed local variable "sample_rate". | ||||
* | | input_plugin: method init() returns errors with GError | Max Kellermann | 2009-12-14 | 5 | -11/+52 |
| | | | | | | | | | | Not used by any plugin currently, but this eliminates the g_error() call in input_plugin_config(), so it's worth it. | ||||
* | | input_stream: moved input_stream_global_init() to input_init.c | Max Kellermann | 2009-12-14 | 5 | -62/+111 |
| | | |||||
* | | input_stream: moved plugin list to input_registry.c | Max Kellermann | 2009-12-14 | 3 | -30/+89 |
| | | |||||
* | | input_stream: make input_plugins NULL terminated | Max Kellermann | 2009-12-14 | 1 | -7/+5 |
| | | | | | | | | This is easier to traverse. | ||||
* | | filter: added normalize filter plugin | Max Kellermann | 2009-12-14 | 3 | -0/+125 |
| | | | | | | | | Wrap the AudioCompress library in a filter plugin. |