aboutsummaryrefslogtreecommitdiffstats
path: root/src/input/file_input_plugin.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* input_stream: non-blocking I/OMax Kellermann2011-09-161-2/+5
| | | | | | | | | 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.
* input/file: return NULL instead of "false"Max Kellermann2011-09-151-4/+4
|
* input_stream: move input_stream_init(), _deinit() to _internal.cMax Kellermann2011-09-141-0/+1
|
* copyright year 2011Max Kellermann2011-01-291-1/+1
|
* input/file, output/{fifo,recorder}: add O_BINARY to open() flagsMax Kellermann2010-05-201-2/+2
| | | | Windows compatibility.
* input_stream: added attribute "uri"Max Kellermann2010-01-181-1/+1
|
* input_stream: added function input_stream_deinit()Max Kellermann2010-01-181-0/+1
| | | | All close() implementations must call this method.
* input_stream: return allocated input_stream objectsMax Kellermann2010-01-011-18/+26
| | | | | | | | 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).
* Update copyright notices.Avuton Olrich2009-12-311-1/+1
|
* input_stream: return errors with GErrorMax Kellermann2009-12-151-13/+25
|
* input/file: don't fall back to parent directoryMax Kellermann2009-12-151-18/+3
| | | | | This code has never made any sense, and has broken some of the archive plugin.
* fd_util: removed creat_cloexec()Max Kellermann2009-11-101-1/+1
| | | | Add a "mode" argument to open_cloexec() instead.
* set the close-on-exec flag on all file descriptorsMax Kellermann2009-11-071-1/+2
| | | | | | | | | | | Added the "fd_util" library, which attempts to use the new thread-safe Linux system calls pipe2(), accept4() and the options O_CLOEXEC, SOCK_CLOEXEC. Without these, it falls back to FD_CLOEXEC, which is not thread safe. This is particularly important for the "pipe" output plugin (and others, such as JACK/PulseAudio), because we were heavily leaking file descriptors to child processes.
* mapper, update, ...: use g_build_filename(), G_DIR_SEPARATOR, ...Max Kellermann2009-10-201-1/+1
| | | | | Try to be as portable as possible, use GLib path name functions and macros.
* input_stream: use "goffset" instead of "off_t"Max Kellermann2009-10-111-2/+3
| | | | | | | | | | | | The "off_t" type may change when you enable or disable large file support on 32 bit platforms. This caused severe ABI problems within MPD when we enabled LFS for the first time: two sources included config.h and sys/types.h in different order, and had different off_t sizes - leading to memory corruption because of ABI incompatibility. This patch attempts to get rid of all public "off_t" uses: it removes "off_t" from the input_stream ABI/API, and switches to GLib's 64 bit "goffset" type. This may hurt 32 bit embedded platforms a tiny bit, but that's not even measurable.
* input/file: log message on errorMathieu Rochette2009-05-281-0/+2
| | | | | | | | If a file is removed the library, next time mpd will try to play it it will result in an error 'ERROR: problems decoding some/file.ogg'. Nothing is written in log files (verbose mode or not) [mk: append strerror(errno)]
* all: Update copyright header.Avuton Olrich2009-03-131-6/+7
| | | | | | | | This updates the copyright header to all be the same, which is pretty much an update of where to mail request for a copy of the GPL and the years of the MPD project. This also puts all committers under 'The Music Player Project' umbrella. These entries should go individually in the AUTHORS file, for consistancy.
* decoder_plugin: added method container_scan()Jochen Keil2009-03-091-2/+17
| | | | | [mk: fixed whitespace errors; use delete_song() instead of songvec_delete()]
* input: pass config_param to input_plugin.init()Max Kellermann2009-03-021-0/+1
| | | | | Allow input plugins to configure with an "input" block in mpd.conf. Also allow the user to disable a plugin completely.
* input: moved plugins to ./src/input/Max Kellermann2009-03-021-0/+129
Create a sub directory for input plugins.