aboutsummaryrefslogtreecommitdiffstats
path: root/src/output/HttpdOutputPlugin.cxx (follow)
Commit message (Collapse)AuthorAgeFilesLines
* output/httpd: move the clients.clear() call to the IOThreadMax Kellermann2014-01-051-1/+3
| | | | This call is not thread-safe.
* output/httpd: import GetEventLoop()Max Kellermann2014-01-051-3/+3
|
* output/httpd: move Bind()/Unbind() to the IOThreadMax Kellermann2014-01-041-4/+8
| | | | Fixes more thread-safety bugs.
* output/httpd: move all broadcast operations to the IOThreadMax Kellermann2014-01-041-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 IOThreadMax Kellermann2014-01-041-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 Kellermann2014-01-041-10/+0
| | | | Don't let the server care for client problems.
* output/httpd: change "struct" to "class"Max Kellermann2013-12-311-2/+0
|
* output/httpd: move code to methods Delay(), Play(), Cancel()Max Kellermann2013-12-311-22/+39
|
* output/httpd: move Cast() into the classMax Kellermann2013-12-311-25/+10
|
* output/httpd: add methods Init(), Finish()Max Kellermann2013-12-311-12/+10
|
* output/httpd: use reference instead of pointerMax Kellermann2013-12-311-1/+1
|
* system/Resolver: sockaddr_to_string() returns std::string()Max Kellermann2013-12-041-8/+3
| | | | No GLib memory allocation.
* HttpdOutputPlugin.cxx: fix null pointer dereferenceDenis Krjuchkov2013-11-261-1/+2
|
* *: use nullptr instead of NULLMax Kellermann2013-10-281-11/+11
|
* TagType: rename enum tag_type to TagTypeMax Kellermann2013-10-201-1/+1
|
* output/httpd: don't include glib.h in headerMax Kellermann2013-10-021-1/+3
|
* Log: new logging library APIMax Kellermann2013-10-021-8/+8
| | | | | Prepare to migrate away from GLib. Currently, we're still using GLib as a backend.
* util/Error: new error passing libraryMax Kellermann2013-09-041-35/+30
| | | | Replaces GLib's GError.
* system/resolver: convert to C++Max Kellermann2013-09-041-1/+1
|
* Makefile.am: move sources to libsystem.aMax Kellermann2013-08-071-2/+2
|
* EncoderPlugin: pass config_param referenceMax Kellermann2013-08-041-1/+1
|
* OutputPlugin: pass config_param referenceMax Kellermann2013-08-041-12/+10
|
* audio_format: convert to C++Max Kellermann2013-08-031-4/+4
|
* tag: convert to C++Max Kellermann2013-07-301-3/+4
|
* encoder_api: convert to C++Max Kellermann2013-07-301-6/+5
|
* output_api: convert to C++Max Kellermann2013-07-301-1/+1
|
* timer: convert to classDenis Krjuchkov2013-05-121-8/+8
|
* encoder_list: convert to C++Max Kellermann2013-04-171-1/+1
|
* output/httpd: use the BufferedSocket class for HttpdClientMax Kellermann2013-01-301-1/+1
|
* ServerSocket: replace callback with virtual methodMax Kellermann2013-01-301-25/+23
|
* output/httpd: safer cast, consider offsetMax Kellermann2013-01-301-10/+16
|
* output/httpd: add constructor, destructor, Configure()Max Kellermann2013-01-301-48/+59
|
* ServerSocket: expose the classMax Kellermann2013-01-301-8/+7
| | | | Eliminate the C wrappers.
* ServerSocket: move to libevent.aMax Kellermann2013-01-301-1/+1
|
* page: convert to C++Max Kellermann2013-01-301-11/+11
|
* icy_server: convert to C++Max Kellermann2013-01-301-1/+1
|
* icy_server: pass pointer to _metadata_page()Max Kellermann2013-01-301-3/+6
| | | | Don't use va_list.
* output/httpd: move functions into the HttpdOutput classMax Kellermann2013-01-271-155/+136
|
* output/httpd: rename struct httpd_outputMax Kellermann2013-01-271-25/+25
|
* ServerSocket: use the SocketMonitor classMax Kellermann2013-01-151-1/+3
|
* server_socket: convert to C++Max Kellermann2013-01-151-1/+1
|
* output/httpd: convert to C++Max Kellermann2013-01-151-0/+570