- 04 Jan, 2014 8 commits
-
-
Max Kellermann authored
-
Max Kellermann authored
Simply set the "quit" flag and wake up the thread. This works even if we're inside this thread. Setting "quit" to a new value without mutex protection is usually not safe, but good enough here.
-
Max Kellermann authored
EventLoop::AddCall() and EventLoop::AddIdle() are unsafe, because we can't cancel those calls.
-
Max Kellermann authored
There is no advantage of using EventLoop::AddCall(), now that DeferredMonitor is thread-safe.
-
Max Kellermann authored
Instead of creating a new eventfd for each DeferredMonitor instance, reuse EventLoop's eventfd, and add a std::list to EventLoop that manages the list of pending DeferredMonitors. This std::list is protected by the same mutex as the "calls" list. The bottom line is: reduced overhead because the per-instance eventfd was eliminated, slightly added overhead due to Mutex usage (but negligible), and we're thread-safe now. This subsystem is now good enough to replace EventLoop::AddCall().
-
James McGlashan (DarkFox) authored
-
James McGlashan (DarkFox) authored
-
James McGlashan (DarkFox) authored
-
- 02 Jan, 2014 1 commit
-
-
James McGlashan (DarkFox) authored
-
- 31 Dec, 2013 8 commits
-
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
- 29 Dec, 2013 20 commits
-
-
Max Kellermann authored
-
Max Kellermann authored
Add the TagStream.cxx library, similar to TagFile.cxx, and use it to load tags from song files inside archives.
-
Max Kellermann authored
Merge some duplicate code.
-
Max Kellermann authored
Got lost in commit c97685fe
-
Max Kellermann authored
-
Max Kellermann authored
Replaces decoder_plugin_from_suffix().
-
Max Kellermann authored
.. instead of decoder_plugin_from_suffix(). This reduces overhead by walking the array only once.
-
Max Kellermann authored
Instead of using the first DecoderPlugin that supports the suffix, use the first one that actually implements the "container_scan" method.
-
Max Kellermann authored
-
Max Kellermann authored
.. instead of decoder_plugin_from_suffix(). This reduces overhead by walking the array only once.
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
If we have libyajl 2.0.1 (without a pkg-config file), our configure.ac would assume this is the libyajl 1.0 API, because the function yajl_alloc() exists in both. This commit changes the library check to the function yajl_parse_complete() which was removed in the 2.0 API. This fixes build failure with libyajl 2.0.1.
-
Max Kellermann authored
We can assume that initgroups() would be a no-op in that case, however initgroups() is not allowed for unprivileged users anyway.
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
- 28 Dec, 2013 3 commits
-
-
Max Kellermann authored
-
Max Kellermann authored
Use the existing PcmDither library.
-
Max Kellermann authored
Instead of just adding a rectangular random value before shifting back to the normal scale, use the existing PcmDither library.
-