aboutsummaryrefslogtreecommitdiffstats
path: root/src/output/HttpdOutputPlugin.cxx (unfollow)
Commit message (Collapse)AuthorFilesLines
2014-01-05output/httpd: move the clients.clear() call to the IOThreadMax Kellermann1-1/+3
This call is not thread-safe.
2014-01-05output/httpd: import GetEventLoop()Max Kellermann1-3/+3
2014-01-04output/httpd: move Bind()/Unbind() to the IOThreadMax Kellermann1-4/+8
Fixes more thread-safety bugs.
2014-01-04output/httpd: move all broadcast operations to the IOThreadMax Kellermann1-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.
2014-01-04output/httpd: use the IOThreadMax Kellermann1-2/+2
Do all I/O in the IOThread and not in the main thread. This solves an upcoming deadlock problem.
2014-01-04output/httpd: move queue size check to HttpdClient::PushPage()Max Kellermann1-10/+0
Don't let the server care for client problems.
2013-12-31output/httpd: change "struct" to "class"Max Kellermann1-2/+0
2013-12-31output/httpd: move code to methods Delay(), Play(), Cancel()Max Kellermann1-22/+39
2013-12-31output/httpd: move Cast() into the classMax Kellermann1-25/+10
2013-12-31output/httpd: add methods Init(), Finish()Max Kellermann1-12/+10
2013-12-31output/httpd: use reference instead of pointerMax Kellermann1-1/+1
2013-12-04system/Resolver: sockaddr_to_string() returns std::string()Max Kellermann1-8/+3
No GLib memory allocation.
2013-11-26HttpdOutputPlugin.cxx: fix null pointer dereferenceDenis Krjuchkov1-1/+2
2013-10-28*: use nullptr instead of NULLMax Kellermann1-11/+11
2013-10-20TagType: rename enum tag_type to TagTypeMax Kellermann1-1/+1
2013-10-02output/httpd: don't include glib.h in headerMax Kellermann1-1/+3
2013-10-02Log: new logging library APIMax Kellermann1-8/+8
Prepare to migrate away from GLib. Currently, we're still using GLib as a backend.
2013-09-04util/Error: new error passing libraryMax Kellermann1-35/+30
Replaces GLib's GError.
2013-09-04system/resolver: convert to C++Max Kellermann1-1/+1
2013-08-07Makefile.am: move sources to libsystem.aMax Kellermann1-2/+2
2013-08-04EncoderPlugin: pass config_param referenceMax Kellermann1-1/+1
2013-08-04OutputPlugin: pass config_param referenceMax Kellermann1-12/+10
2013-08-03audio_format: convert to C++Max Kellermann1-4/+4
2013-07-30tag: convert to C++Max Kellermann1-3/+4
2013-07-30encoder_api: convert to C++Max Kellermann1-6/+5
2013-07-30output_api: convert to C++Max Kellermann1-1/+1
2013-05-12timer: convert to classDenis Krjuchkov1-8/+8
2013-04-17encoder_list: convert to C++Max Kellermann1-1/+1
2013-01-30output/httpd: use the BufferedSocket class for HttpdClientMax Kellermann1-1/+1
2013-01-30ServerSocket: replace callback with virtual methodMax Kellermann1-25/+23
2013-01-30output/httpd: safer cast, consider offsetMax Kellermann1-10/+16
2013-01-30output/httpd: add constructor, destructor, Configure()Max Kellermann1-48/+59
2013-01-30ServerSocket: expose the classMax Kellermann1-8/+7
Eliminate the C wrappers.
2013-01-30ServerSocket: move to libevent.aMax Kellermann1-1/+1
2013-01-30page: convert to C++Max Kellermann1-11/+11
2013-01-30icy_server: convert to C++Max Kellermann1-1/+1
2013-01-30icy_server: pass pointer to _metadata_page()Max Kellermann1-3/+6
Don't use va_list.
2013-01-27output/httpd: move functions into the HttpdOutput classMax Kellermann1-155/+136
2013-01-27output/httpd: rename struct httpd_outputMax Kellermann1-25/+25
2013-01-15ServerSocket: use the SocketMonitor classMax Kellermann1-1/+3
2013-01-15server_socket: convert to C++Max Kellermann1-1/+1
2013-01-15output/httpd: convert to C++Max Kellermann1-144/+91
2012-10-02output/httpd: make variables more localMax Kellermann1-31/+16
2012-08-14output/httpd: move delay from _pause() to _delay()Max Kellermann1-1/+5
2012-08-14output/httpd: fix throttling bug after resuming playbackMax Kellermann1-0/+8
Reset the timer when paused and no client is connected. This fixes Mantis ticket 0003527.
2012-08-14output/httpd: move code to _has_clients()Max Kellermann1-11/+27
2011-09-20socket_util: move sockaddr_to_string() to resolver.cMax Kellermann1-1/+1
2011-09-20fd_util: add function close_socket()Max Kellermann1-2/+2
Wrap close(), use closesocket() on WIN32/WinSock.
2011-09-19output_plugin: the plugin allocates the audio_output objectMax Kellermann1-27/+41
Pass audio_output objects around instead of void pointers. This will give some more control to the plugin, and prepares for non-blocking audio outputs.
2011-09-17output: per-plugin headerMax Kellermann1-0/+1
Move the "extern" declarations from output_list.c, for more type safety.