Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | copyright year 2014 | Max Kellermann | 2014-01-13 | 1 | -1/+1 |
| | |||||
* | output/httpd: move the clients.clear() call to the IOThread | Max Kellermann | 2014-01-05 | 1 | -1/+3 |
| | | | | This call is not thread-safe. | ||||
* | output/httpd: import GetEventLoop() | Max Kellermann | 2014-01-05 | 1 | -3/+3 |
| | |||||
* | output/httpd: move Bind()/Unbind() to the IOThread | Max Kellermann | 2014-01-04 | 1 | -4/+8 |
| | | | | Fixes more thread-safety bugs. | ||||
* | output/httpd: move all broadcast operations to the IOThread | Max Kellermann | 2014-01-04 | 1 | -10/+56 |
| | | | | | | | Add a Page queue to class HttpdOutput, and use DeferredMonitor to flush this queue inside the IOThread. This fixes a thread-safety issue: much of EventLoop is not thread-safe, and the httpd plugin ignored that problem. | ||||
* | output/httpd: use the IOThread | Max Kellermann | 2014-01-04 | 1 | -2/+2 |
| | | | | | Do all I/O in the IOThread and not in the main thread. This solves an upcoming deadlock problem. | ||||
* | output/httpd: move queue size check to HttpdClient::PushPage() | Max Kellermann | 2014-01-04 | 1 | -10/+0 |
| | | | | Don't let the server care for client problems. | ||||
* | output/httpd: change "struct" to "class" | Max Kellermann | 2013-12-31 | 1 | -2/+0 |
| | |||||
* | output/httpd: move code to methods Delay(), Play(), Cancel() | Max Kellermann | 2013-12-31 | 1 | -22/+39 |
| | |||||
* | output/httpd: move Cast() into the class | Max Kellermann | 2013-12-31 | 1 | -25/+10 |
| | |||||
* | output/httpd: add methods Init(), Finish() | Max Kellermann | 2013-12-31 | 1 | -12/+10 |
| | |||||
* | output/httpd: use reference instead of pointer | Max Kellermann | 2013-12-31 | 1 | -1/+1 |
| | |||||
* | system/Resolver: sockaddr_to_string() returns std::string() | Max Kellermann | 2013-12-04 | 1 | -8/+3 |
| | | | | No GLib memory allocation. | ||||
* | HttpdOutputPlugin.cxx: fix null pointer dereference | Denis Krjuchkov | 2013-11-26 | 1 | -1/+2 |
| | |||||
* | *: use nullptr instead of NULL | Max Kellermann | 2013-10-28 | 1 | -11/+11 |
| | |||||
* | TagType: rename enum tag_type to TagType | Max Kellermann | 2013-10-20 | 1 | -1/+1 |
| | |||||
* | output/httpd: don't include glib.h in header | Max Kellermann | 2013-10-02 | 1 | -1/+3 |
| | |||||
* | Log: new logging library API | Max Kellermann | 2013-10-02 | 1 | -8/+8 |
| | | | | | Prepare to migrate away from GLib. Currently, we're still using GLib as a backend. | ||||
* | util/Error: new error passing library | Max Kellermann | 2013-09-04 | 1 | -35/+30 |
| | | | | Replaces GLib's GError. | ||||
* | system/resolver: convert to C++ | Max Kellermann | 2013-09-04 | 1 | -1/+1 |
| | |||||
* | Makefile.am: move sources to libsystem.a | Max Kellermann | 2013-08-07 | 1 | -2/+2 |
| | |||||
* | EncoderPlugin: pass config_param reference | Max Kellermann | 2013-08-04 | 1 | -1/+1 |
| | |||||
* | OutputPlugin: pass config_param reference | Max Kellermann | 2013-08-04 | 1 | -12/+10 |
| | |||||
* | audio_format: convert to C++ | Max Kellermann | 2013-08-03 | 1 | -4/+4 |
| | |||||
* | tag: convert to C++ | Max Kellermann | 2013-07-30 | 1 | -3/+4 |
| | |||||
* | encoder_api: convert to C++ | Max Kellermann | 2013-07-30 | 1 | -6/+5 |
| | |||||
* | output_api: convert to C++ | Max Kellermann | 2013-07-30 | 1 | -1/+1 |
| | |||||
* | timer: convert to class | Denis Krjuchkov | 2013-05-12 | 1 | -8/+8 |
| | |||||
* | encoder_list: convert to C++ | Max Kellermann | 2013-04-17 | 1 | -1/+1 |
| | |||||
* | output/httpd: use the BufferedSocket class for HttpdClient | Max Kellermann | 2013-01-30 | 1 | -1/+1 |
| | |||||
* | ServerSocket: replace callback with virtual method | Max Kellermann | 2013-01-30 | 1 | -25/+23 |
| | |||||
* | output/httpd: safer cast, consider offset | Max Kellermann | 2013-01-30 | 1 | -10/+16 |
| | |||||
* | output/httpd: add constructor, destructor, Configure() | Max Kellermann | 2013-01-30 | 1 | -48/+59 |
| | |||||
* | ServerSocket: expose the class | Max Kellermann | 2013-01-30 | 1 | -8/+7 |
| | | | | Eliminate the C wrappers. | ||||
* | ServerSocket: move to libevent.a | Max Kellermann | 2013-01-30 | 1 | -1/+1 |
| | |||||
* | page: convert to C++ | Max Kellermann | 2013-01-30 | 1 | -11/+11 |
| | |||||
* | icy_server: convert to C++ | Max Kellermann | 2013-01-30 | 1 | -1/+1 |
| | |||||
* | icy_server: pass pointer to _metadata_page() | Max Kellermann | 2013-01-30 | 1 | -3/+6 |
| | | | | Don't use va_list. | ||||
* | output/httpd: move functions into the HttpdOutput class | Max Kellermann | 2013-01-27 | 1 | -155/+136 |
| | |||||
* | output/httpd: rename struct httpd_output | Max Kellermann | 2013-01-27 | 1 | -25/+25 |
| | |||||
* | ServerSocket: use the SocketMonitor class | Max Kellermann | 2013-01-15 | 1 | -1/+3 |
| | |||||
* | server_socket: convert to C++ | Max Kellermann | 2013-01-15 | 1 | -1/+1 |
| | |||||
* | output/httpd: convert to C++ | Max Kellermann | 2013-01-15 | 1 | -0/+570 |