Commit message (Collapse) | Author | Files | Lines | ||
---|---|---|---|---|---|
2013-01-27 | zeroconf: convert to C++ | Max Kellermann | 8 | -38/+106 | |
2013-01-27 | event/SocketMonitor: add method Steal() | Max Kellermann | 2 | -3/+17 | |
2013-01-27 | PlayerControl: work around std::nanf() not being available on MacPorts | Max Kellermann | 1 | -0/+6 | |
2013-01-27 | string_util: add fallback for strnlen() | Max Kellermann | 2 | -0/+23 | |
Usually, when strndup() is not available, strndup() isn't either, because both are POSIX 2008. | |||||
2013-01-28 | Path::FromUTF8() returns nulled instance on error, add error handling where ↵ | Denis Krjuchkov | 8 | -23/+69 | |
required | |||||
2013-01-28 | Path: convert remaining funcs to methods, keep fs_charset as std::string | Denis Krjuchkov | 4 | -30/+28 | |
2013-01-28 | Path: merge utf8_to_fs_charset() into Path::FromUTF8() | Denis Krjuchkov | 2 | -13/+4 | |
2013-01-28 | Path: convert fs_charset_to_utf8() to static method Path::ToUTF8() | Denis Krjuchkov | 7 | -53/+59 | |
2013-01-28 | Path: introduce MPD_PATH_MAX_UTF8 | Denis Krjuchkov | 1 | -0/+10 | |
2013-01-27 | DecoderControl, InputStream: use Mutex/Cond instead of GMutex/GCond | Max Kellermann | 41 | -205/+168 | |
2013-01-27 | playlist/*: convert to C++ | Max Kellermann | 23 | -240/+274 | |
2013-01-26 | Path: define MPD_PATH_MAX to 260 on Windows | Denis Krjuchkov | 1 | -1/+3 | |
2013-01-26 | Path: ToUTF() returns std::string | Denis Krjuchkov | 3 | -11/+20 | |
2013-01-26 | input_stream: forward-declare the struct | Max Kellermann | 36 | -141/+266 | |
Hide the definition from C code, to prepare the transition to C++. | |||||
2013-01-26 | tag_file: convert to C++ | Max Kellermann | 3 | -6/+10 | |
2013-01-26 | playlist/*: convert to C++ | Max Kellermann | 15 | -56/+75 | |
2013-01-26 | decoder/ffmpeg: convert to C++ | Max Kellermann | 5 | -25/+67 | |
2013-01-26 | Mapper: improve usage of Path class | Denis Krjuchkov | 6 | -46/+44 | |
2013-01-25 | PlayerControl: add second Cond object | Max Kellermann | 3 | -2/+34 | |
This fixes a deadlock bug introduced by 18076ac9. After all, the second Cond was necessary. The problem: two threads can wait for a signal at the same time. The player thread waits for the output thread to finish playback. The main thread waits for the player thread to complete a command. The output thread finishes playback, and sends a signal, which unfortunately does not wake up the player thread, but the main thread. The main thread sees that the command is still not finished, and waits again. The signal is lost forever, and MPD is deadlocked. | |||||
2013-01-25 | input_{internal,plugin}: convert to C++ | Max Kellermann | 18 | -43/+34 | |
2013-01-24 | archive/*: convert to C++ | Max Kellermann | 19 | -142/+185 | |
2013-01-23 | DecoderControl: fix typo in assertion check | Max Kellermann | 1 | -3/+3 | |
2013-01-22 | Path: move to fs subdirectory | Denis Krjuchkov | 21 | -22/+22 | |
2013-01-22 | FileSystem: extract DirectoryReader, improve the rest | Denis Krjuchkov | 3 | -100/+125 | |
- DirectoryReader is extracted to separate header - FileSystem.cxx/FileSystem.hxx/DirectoryReader.hxx moved to fs/ subdir - Functions return true on success, instead of 0 (where applicable) - ReadLink return result instead of out parameter - UnlinkFile is renamed to RemoveFile - CheckExists/CheckIsRegular/CheckIsDirectory are renamed to PathExists/FileExists/DirectoryExists | |||||
2013-01-21 | input/archive: fix memory leak in error handler | Max Kellermann | 1 | -1/+3 | |
2013-01-21 | input,playlist/despotify: convert to C++ | Max Kellermann | 8 | -45/+61 | |
2013-01-21 | despotify_utils: fix indent | Max Kellermann | 1 | -7/+7 | |
2013-01-21 | despotify_utils: include cleanup | Max Kellermann | 2 | -4/+6 | |
2013-01-21 | despotify_utils: add missing copyright header | Max Kellermann | 1 | -0/+19 | |
2013-01-21 | input/cdio_paranoia: convert to C++ | Max Kellermann | 3 | -53/+64 | |
2013-01-21 | input/ffmpeg: convert to C++ | Max Kellermann | 3 | -20/+30 | |
2013-01-21 | input/rewind: convert to C++ | Max Kellermann | 3 | -76/+80 | |
2013-01-21 | input/file,mms: convert to C++ | Max Kellermann | 5 | -69/+88 | |
2013-01-21 | input_internal.h: add extern "C" | Max Kellermann | 3 | -8/+8 | |
2013-01-21 | UpdateRemove: Mutex/Cond instead of GMutex/GCond | Max Kellermann | 3 | -22/+10 | |
2013-01-21 | DecoderControl: move functions into the class | Max Kellermann | 6 | -360/+281 | |
2013-01-20 | PlayerControl: move functions into the class | Max Kellermann | 14 | -400/+335 | |
2013-01-20 | FileSystem: new library for Path-friendly file system routines | Denis Krjuchkov | 2 | -0/+258 | |
2013-01-19 | dummy.cxx: remove unused file | Denis Krjuchkov | 1 | -30/+0 | |
This file was used previously to force C++ linkage. It's no longer required because most of the code is C++ anyway. | |||||
2013-01-18 | Path: new class "Path" wraps filesystem path strings | Max Kellermann | 21 | -238/+380 | |
2013-01-18 | Playlist, Song: clarify parameter encoding | Max Kellermann | 6 | -15/+15 | |
2013-01-17 | path: convert to C++ | Max Kellermann | 15 | -33/+20 | |
2013-01-16 | output/roar: convert to C++ | Max Kellermann | 4 | -137/+99 | |
2013-01-16 | Idle: don't wake up event loop on duplicate event | Max Kellermann | 1 | -2/+3 | |
2013-01-16 | Idle: use std::atomic instead of GMutex | Max Kellermann | 4 | -44/+5 | |
2013-01-16 | Main: fix comment typo | Max Kellermann | 1 | -1/+1 | |
2013-01-16 | ClientList: convert to a class | Max Kellermann | 12 | -152/+72 | |
2013-01-16 | ClientGlobal: move client_close_all() to ClientList.cxx | Max Kellermann | 3 | -32/+13 | |
2013-01-16 | Revert "ClientList: allow deleting clients in client_list_foreach() callback" | Max Kellermann | 1 | -2/+2 | |
This reverts commit f56c6a18c13f4135fa9944cb7cb568115a018955. This fix is not necessary anymore because clients are now being deleted by the timer callback. | |||||
2013-01-16 | Client: use TimeoutMonitor to track connection timeout | Max Kellermann | 6 | -78/+22 | |
Don't use a global loop over the whole client list. |