Commit message (Collapse) | Author | Files | Lines | ||
---|---|---|---|---|---|
2015-01-01 | Copyright year 2015 | Max Kellermann | 1 | -1/+1 | |
2014-10-02 | input/Open: use OpenLocalInputStream() | Max Kellermann | 1 | -12/+7 | |
Make the "open" method of plugins "file" and "archive" dummy methods that always fail. Instead, let InputStream::Open() hard-code access to these two plugins by using OpenLocalInputStream(). This allows simplifyin the algorithm for falling back to probing archive plugins. | |||||
2014-10-02 | input/file: export function OpenFileInputStream() | Max Kellermann | 1 | -13/+26 | |
2014-10-02 | input/file: generate Error when errno==ENOENT | Max Kellermann | 1 | -1/+1 | |
This special case was useless. Fixes the dreaded "Unrecognized URI" error message when a file does not exist. | |||||
2014-10-02 | input/file: make the "fd" attribute "const" | Max Kellermann | 1 | -1/+1 | |
2014-10-02 | input/file: make variables more local | Max Kellermann | 1 | -6/+3 | |
2014-10-02 | input/file: convert to class | Max Kellermann | 1 | -1/+2 | |
2014-08-19 | InputStream: make offset_type unsigned | Max Kellermann | 1 | -3/+3 | |
2014-05-22 | InputStream: make Seek() always absolute | Max Kellermann | 1 | -5/+3 | |
Remove the "whence" parameter that is not actually necessary, and only complicates the InputStream implementations. | |||||
2014-05-11 | InputStream: remove attribute "plugin" | Max Kellermann | 1 | -1/+1 | |
2014-05-11 | InputStream: make various methods abstract | Max Kellermann | 1 | -30/+20 | |
Replace InputPlugin attributes. | |||||
2014-05-11 | InputStream: add virtual destructor | Max Kellermann | 1 | -9/+0 | |
Replaces the method Close(). | |||||
2014-05-11 | input/plugins: make InputStream the base class | Max Kellermann | 1 | -12/+8 | |
Prepare for adding virtual methods. | |||||
2014-05-11 | InputStream: convert to class | Max Kellermann | 1 | -2/+2 | |
2014-01-24 | Input*: move to input/ | Max Kellermann | 1 | -2/+2 | |
2014-01-13 | copyright year 2014 | Max Kellermann | 1 | -1/+1 | |
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 | -2/+0 | |
2013-10-23 | input_stream: rename struct to InputStream | Max Kellermann | 1 | -6/+6 | |
2013-10-23 | InputInternal: remove obsolete library | Max Kellermann | 1 | -1/+0 | |
2013-10-17 | fs/Path: move definitions to struct PathTraits | Max Kellermann | 1 | -2/+2 | |
2013-10-17 | InputStream: use int64_t instead of goffset | Max Kellermann | 1 | -2/+3 | |
Decouple some more from GLib. | |||||
2013-10-17 | input_plugin: rename struct to "InputPlugin" | Max Kellermann | 1 | -1/+1 | |
2013-10-14 | fs/Path: add method IsAbsolute() | Max Kellermann | 1 | -1/+2 | |
2013-10-02 | Log: new logging library API | Max Kellermann | 1 | -3/+0 | |
Prepare to migrate away from GLib. Currently, we're still using GLib as a backend. | |||||
2013-09-04 | util/Error: new error passing library | Max Kellermann | 1 | -16/+13 | |
Replaces GLib's GError. | |||||
2013-08-07 | Makefile.am: move sources to libsystem.a | Max Kellermann | 1 | -1/+1 | |
2013-01-28 | InputStream: add constructor/destructor | Max Kellermann | 1 | -5/+2 | |
Eliminate input_stream_init() and input_stream_deinit(). | |||||
2013-01-27 | DecoderControl, InputStream: use Mutex/Cond instead of GMutex/GCond | Max Kellermann | 1 | -2/+2 | |
2013-01-26 | input_stream: forward-declare the struct | Max Kellermann | 1 | -0/+1 | |
Hide the definition from C code, to prepare the transition to C++. | |||||
2013-01-25 | input_{internal,plugin}: convert to C++ | Max Kellermann | 1 | -2/+2 | |
2013-01-21 | input/file,mms: convert to C++ | Max Kellermann | 1 | -30/+41 | |
2012-10-04 | input/file: use errno_quark() | Max Kellermann | 1 | -11/+6 | |
2011-09-16 | input_stream: non-blocking I/O | Max Kellermann | 1 | -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. | |||||
2011-09-15 | input/file: return NULL instead of "false" | Max Kellermann | 1 | -4/+4 | |
2011-09-14 | input_stream: move input_stream_init(), _deinit() to _internal.c | Max Kellermann | 1 | -0/+1 | |
2011-01-29 | copyright year 2011 | Max Kellermann | 1 | -1/+1 | |
2010-05-20 | input/file, output/{fifo,recorder}: add O_BINARY to open() flags | Max Kellermann | 1 | -2/+2 | |
Windows compatibility. | |||||
2010-01-18 | input_stream: added attribute "uri" | Max Kellermann | 1 | -1/+1 | |
2010-01-18 | input_stream: added function input_stream_deinit() | Max Kellermann | 1 | -0/+1 | |
All close() implementations must call this method. | |||||
2010-01-01 | input_stream: return allocated input_stream objects | Max Kellermann | 1 | -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). | |||||
2009-12-31 | Update copyright notices. | Avuton Olrich | 1 | -1/+1 | |
2009-12-15 | input_stream: return errors with GError | Max Kellermann | 1 | -13/+25 | |
2009-12-15 | input/file: don't fall back to parent directory | Max Kellermann | 1 | -18/+3 | |
This code has never made any sense, and has broken some of the archive plugin. | |||||
2009-12-15 | input/file: don't fall back to parent directory | Max Kellermann | 1 | -18/+3 | |
This code has never made any sense, and has broken some of the archive plugin. | |||||
2009-11-10 | fd_util: removed creat_cloexec() | Max Kellermann | 1 | -1/+1 | |
Add a "mode" argument to open_cloexec() instead. | |||||
2009-11-07 | set the close-on-exec flag on all file descriptors | Max Kellermann | 1 | -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. | |||||
2009-10-20 | mapper, update, ...: use g_build_filename(), G_DIR_SEPARATOR, ... | Max Kellermann | 1 | -1/+1 | |
Try to be as portable as possible, use GLib path name functions and macros. | |||||
2009-10-11 | input_stream: use "goffset" instead of "off_t" | Max Kellermann | 1 | -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. | |||||
2009-05-28 | input/file: log message on error | Mathieu Rochette | 1 | -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)] |