aboutsummaryrefslogtreecommitdiffstats
path: root/src (unfollow)
Commit message (Collapse)AuthorFilesLines
2013-01-15output_internal, ...: add extern "C"Max Kellermann7-0/+56
2013-01-15encoder/{Vorbis,Opus}: use new/deleteMax Kellermann2-10/+14
2013-01-15InotifySource: use the SocketMonitor classMax Kellermann3-40/+24
2013-01-15mixer/Alsa: use MultiSocketMonitorMax Kellermann1-134/+37
2013-01-15input/Curl: move code to class MultiSocketMonitorMax Kellermann3-116/+291
2013-01-15input/Curl: simpler GPollFD initialisationMax Kellermann1-5/+2
Using initializer list.
2013-01-15input/Curl: don't remove/add modified GPollFDMax Kellermann1-9/+2
Not necessary, GLib will pick up the updated GPollFD automatically.
2013-01-15Client: rebase on the new BufferedSocket classMax Kellermann10-304/+66
2013-01-15event/SocketMonitor: wrapper class for GSource + GPollFDMax Kellermann4-0/+607
2013-01-15Client: move output buffer code to new class PeakBufferMax Kellermann6-165/+244
2013-01-15util/fifo_buffer: add method _init()Max Kellermann2-0/+11
2013-01-15Client: move connection functions into the classMax Kellermann11-56/+50
2013-01-15SignalHandlers: emit GlobalEvents::SHUTDOWNMax Kellermann1-1/+1
.. instead of calling g_main_loop_quit(), which may dead-lock.
2013-01-15fifo_buffer: move to util/Max Kellermann13-12/+12
2013-01-15fifo_buffer: add extern "C"Max Kellermann4-8/+9
2013-01-15socket_error: new library for errno / WSAGetLastError()Max Kellermann1-0/+146
2013-01-15io_error: add function new_error_errno()Max Kellermann1-1/+8
2013-01-14Client*: include check.h / config.hMax Kellermann3-0/+3
2013-01-14ClientList: allow deleting clients in client_list_foreach() callbackDark Raven1-2/+2
2013-01-14Revert "ClientList.cxx: copy client list before iterating"Max Kellermann1-2/+1
This reverts commit f53dadcc6d0a29ce7419a07a51762b4b44654696, to prepare for a better solution.
2013-01-14event/TimeoutMonitor: wrapper for g_timeout_source_new()Max Kellermann8-60/+152
2013-01-14StateFile: convert to a classMax Kellermann3-75/+80
2013-01-14gcc.h: add C++11 "final" fallback macroMax Kellermann1-0/+1
2013-01-14InotifyQueue: convert to a classMax Kellermann3-41/+45
2013-01-14InotifySource: convert to a classMax Kellermann3-98/+96
2013-01-14Main, IOThread: move GMainLoop setup code to class EventLoopMax Kellermann11-76/+131
2013-01-14IOThread: use gcc.hMax Kellermann1-4/+6
2013-01-13ClientList.cxx: copy client list before iteratingDenis Krjuchkov1-1/+2
It seems that it is not safe to remove the item from std::list while it's being iterated somewhere else. This is a very simple quick fix to make things work until some better solution is implemented.
2013-01-13WakeFD.cxx: use two sockets instead of pipe on Win32Denis Krjuchkov2-5/+128
Pipes aren't really pollable on Windows. GLib emulates polling on pipes using separate reader/writer threads. This adds significant overhead and keeps a strong dependency on GLib. socketpair() function is absent on Windows as well. We implement it here in a loose way.
2013-01-13Win32Main.cxx: more clean shutdownDenis Krjuchkov1-5/+22
This change fixes two issues: 1) console_handler is called from a separate thread. Thread-safe primitive is required for correct operation. 2) If console_handler returns TRUE our process is immediately terminated. We use Sleep() to give main thread an opportunity to shutdown correctly.
2013-01-11thread/{Mutex,Cond}: new backend for WIN32Max Kellermann4-4/+135
Use CRITICAL_SECTION and CONDITION_VARIABLE. This requires Windows Vista or newer. It fixes problems with GLib threading objects that were implicitly created by static constructors before g_thread_init().
2013-01-11GlobalEvents: #undef DELETE on WindowsMax Kellermann1-0/+8
Work around a build failure due to windows.h macro.
2013-01-11configure.ac: enable WIN32_LEAN_AND_MEAN on WindowsMax Kellermann3-1/+3
2013-01-11string_util.c: provide fallback strndup() implementationDenis Krjuchkov3-0/+48
This patch also adds extern "C" { } wrapper around string_util.h to allow its usage in C++ code
2013-01-10input/curl: use std::list instead of GQueueMax Kellermann1-93/+80
2013-01-10icy_metadata: convert to C++Max Kellermann4-163/+136
2013-01-10input/Curl: add constructor to input_curl classMax Kellermann1-32/+30
2013-01-10input/Curl: remove unused source/source_id attributesMax Kellermann1-7/+0
2013-01-10input/Curl: remove redundant attribute "url"Max Kellermann1-4/+2
Use the "url" attribute from the base class instead.
2013-01-10input/Curl: use std::forward_list instead of GSListMax Kellermann1-27/+21
2013-01-10input/Curl: remove unused attribute "fds"Max Kellermann1-3/+1
2013-01-10input/Curl: require libcurl 7.18Max Kellermann1-24/+4
2013-01-10output/shout: refactor check_block_param() to a functionMax Kellermann1-18/+15
Don't use macro magic, don't dereference the block_param.
2013-01-10Log, ...: include cleanupMax Kellermann3-3/+0
2013-01-10decoder/wavpack: convert to C++Max Kellermann4-36/+58
2013-01-10decoder/wavpack: include cleanupMax Kellermann1-3/+0
2013-01-10conf: convert to C++Max Kellermann1-63/+73
2013-01-10path: move code to IsSupportedCharset()Max Kellermann1-6/+15
2013-01-10path: make the "win_charset" buffer staticMax Kellermann1-1/+1
It is illegal to use it after going out of scope.
2013-01-10notify: convert to C++Max Kellermann6-99/+79