aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* input/Curl: break loop when remaining length becomes 0Max Kellermann2013-01-151-0/+6
| | | | Fixes assertion failure (regression).
* PlayerControl: initialise attribute "border_pause"Max Kellermann2013-01-151-1/+2
|
* Playlist: initialise attribute "playing"Max Kellermann2013-01-151-1/+1
|
* ServerSocket: use the SocketMonitor classMax Kellermann2013-01-155-56/+40
|
* event/SocketMonitor: add method Open()Max Kellermann2013-01-152-9/+27
| | | | Allow creating a closed SocketMonitor instance.
* ServerSocket: move more code to methodsMax Kellermann2013-01-151-19/+30
|
* ServerSocket, SocketUtil: use the SocketError libraryMax Kellermann2013-01-152-23/+18
| | | | Use WinSock errors on Windows.
* socket_util: convert to C++Max Kellermann2013-01-154-17/+8
|
* SocketError: merge duplicate FormatMessage() callsMax Kellermann2013-01-151-26/+36
| | | | Make a class that contains the formatting code and the buffer.
* server_socket: convert to C++Max Kellermann2013-01-156-155/+160
|
* output/httpd: convert to C++Max Kellermann2013-01-159-991/+914
|
* output_internal, ...: add extern "C"Max Kellermann2013-01-157-0/+56
|
* encoder/{Vorbis,Opus}: use new/deleteMax Kellermann2013-01-152-10/+14
|
* InotifySource: use the SocketMonitor classMax Kellermann2013-01-155-43/+29
|
* mixer/Alsa: use MultiSocketMonitorMax Kellermann2013-01-154-134/+55
|
* input/Curl: move code to class MultiSocketMonitorMax Kellermann2013-01-154-117/+298
|
* input/Curl: simpler GPollFD initialisationMax Kellermann2013-01-151-5/+2
| | | | Using initializer list.
* input/Curl: don't remove/add modified GPollFDMax Kellermann2013-01-151-9/+2
| | | | Not necessary, GLib will pick up the updated GPollFD automatically.
* Client: rebase on the new BufferedSocket classMax Kellermann2013-01-1510-304/+66
|
* event/SocketMonitor: wrapper class for GSource + GPollFDMax Kellermann2013-01-155-1/+610
|
* Client: move output buffer code to new class PeakBufferMax Kellermann2013-01-157-165/+245
|
* util/fifo_buffer: add method _init()Max Kellermann2013-01-152-0/+11
|
* Client: move connection functions into the classMax Kellermann2013-01-1511-56/+50
|
* SignalHandlers: emit GlobalEvents::SHUTDOWNMax Kellermann2013-01-151-1/+1
| | | | .. instead of calling g_main_loop_quit(), which may dead-lock.
* fifo_buffer: move to util/Max Kellermann2013-01-1515-23/+23
|
* fifo_buffer: add extern "C"Max Kellermann2013-01-154-8/+9
|
* socket_error: new library for errno / WSAGetLastError()Max Kellermann2013-01-152-0/+147
|
* io_error: add function new_error_errno()Max Kellermann2013-01-151-1/+8
|
* Client*: include check.h / config.hMax Kellermann2013-01-143-0/+3
|
* ClientList: allow deleting clients in client_list_foreach() callbackDark Raven2013-01-141-2/+2
|
* Revert "ClientList.cxx: copy client list before iterating"Max Kellermann2013-01-141-2/+1
| | | | | This reverts commit f53dadcc6d0a29ce7419a07a51762b4b44654696, to prepare for a better solution.
* event/TimeoutMonitor: wrapper for g_timeout_source_new()Max Kellermann2013-01-149-60/+153
|
* StateFile: convert to a classMax Kellermann2013-01-143-75/+80
|
* gcc.h: add C++11 "final" fallback macroMax Kellermann2013-01-141-0/+1
|
* InotifyQueue: convert to a classMax Kellermann2013-01-143-41/+45
|
* InotifySource: convert to a classMax Kellermann2013-01-144-105/+101
|
* Main, IOThread: move GMainLoop setup code to class EventLoopMax Kellermann2013-01-1413-82/+139
|
* IOThread: use gcc.hMax Kellermann2013-01-141-4/+6
|
* ClientList.cxx: copy client list before iteratingDenis Krjuchkov2013-01-131-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.
* WakeFD.cxx: use two sockets instead of pipe on Win32Denis Krjuchkov2013-01-132-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.
* Win32Main.cxx: more clean shutdownDenis Krjuchkov2013-01-131-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.
* configure.ac: use correct variable for checking libmpdclient presenceDenis Krjuchkov2013-01-111-1/+1
|
* thread/{Mutex,Cond}: new backend for WIN32Max Kellermann2013-01-115-4/+137
| | | | | | 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().
* GlobalEvents: #undef DELETE on WindowsMax Kellermann2013-01-111-0/+8
| | | | Work around a build failure due to windows.h macro.
* configure.ac: require Windows Vista or newerMax Kellermann2013-01-111-1/+1
| | | | | We're going to use Vista features soon. Sorry for those poor people still on XP (or Windows, anyway).
* configure.ac: enable WIN32_LEAN_AND_MEAN on WindowsMax Kellermann2013-01-114-1/+4
|
* string_util.c: provide fallback strndup() implementationDenis Krjuchkov2013-01-114-0/+50
| | | | | This patch also adds extern "C" { } wrapper around string_util.h to allow its usage in C++ code
* input/curl: use std::list instead of GQueueMax Kellermann2013-01-101-93/+80
|
* icy_metadata: convert to C++Max Kellermann2013-01-105-165/+137
|
* input/Curl: add constructor to input_curl classMax Kellermann2013-01-101-32/+30
|