aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/nfs/Manager.cxx (unfollow)
Commit message (Collapse)AuthorFilesLines
2015-01-01Copyright year 2015Max Kellermann1-1/+1
2014-11-25lib/nfs/Manager: defer NfsConnection destructionMax Kellermann1-5/+25
Avoids a crash that occurs when NfsConnection::OnSocketReady() dereferences itself before returning.
2014-10-01lib/nfs/Manager: use boost::intrusive::mapMax Kellermann1-18/+48
Reduce overhead for storing the key twice, and more overhead while looking up the connection to remove it after a failure.
2014-06-17lib/nfs/Manager: gcc 4.7 compatibility hackMax Kellermann1-0/+9
std::map::emplace() is only available from gcc 4.8 on.
2014-06-17input/nfs: use the asynchronous libnfs APIMax Kellermann1-29/+17
More robust and cancellable.
2014-01-13copyright year 2014Max Kellermann1-1/+1
2014-01-09event/Loop: allow scheduling events before Run()Max Kellermann1-1/+1
Add the debug-only flag "virgin" which gets checked by assert() calls. Fixes assertion failures when using zeroconf/avahi.
2014-01-05event/Loop: add thread-safety assertionsMax Kellermann1-1/+1
2014-01-04event/Loop: remove the GLib implementationMax Kellermann1-29/+0
Now that the remaining known bugs in poll() implementation are fixed, we can go on without the GLib implementation.
2013-11-28include cleanup using iwyuMax Kellermann1-0/+2
2013-11-27Add infrastructure for using multiple event loopsDenis Krjuchkov1-7/+10
This change adds two configuration options: --with-eventloop=[glib|internal|auto] --with-pollmethod=[epoll|auto] First allows switching between GLib event loop and internal one. Second chooses backend to use for internal event loop. Conditional compilation symbols are changed accordingly. Additional helper macro MPD_OPTIONAL_FUNC_NODEF is added as well.
2013-08-10EventLoop: new implementation using epollMax Kellermann1-0/+20
Implement an event loop without GLib.
2013-08-10event/IdleMonitor: new monitor classMax Kellermann1-16/+25
2013-08-07event/DeferredMonitor: rename Run() to RunDeferred()Max Kellermann1-2/+2
2013-08-07event/DeferredMonitor: use EventLoop::AddIdle()Max Kellermann1-1/+1
2013-08-07event/DeferredMonitor: new class wrapping g_idle_add()Max Kellermann1-22/+16
2013-04-08event/TimeoutMonitor: eliminate support for periodic eventsMax Kellermann1-9/+5
No caller needs this. Fixes use-after-free after returning from Client::OnTimeout().
2013-01-14event/TimeoutMonitor: wrapper for g_timeout_source_new()Max Kellermann1-23/+31
2013-01-03Client: rename the struct client to class ClientMax Kellermann1-3/+3
2013-01-03client: convert to C++Max Kellermann1-3/+3
2012-02-14command: move functions to protocol/result.cMax Kellermann1-14/+30
2012-02-12update_remove: add header update_remove.hMax Kellermann1-9/+13
2012-02-12playlist/embcue: new plugin for reading embedded cue sheetsMax Kellermann1-11/+8
Parses CUE data from the "CUESHEET" tag. Needs further integration in the update thread.
2012-02-11decoder_plugin: scan tags with callback tableMax Kellermann1-0/+5
Pass a callback table to scan_file() and scan_stream(), instead of returning a tag object.
2012-02-11decoder/vorbis: move code to vorbis_comment.cMax Kellermann1-4/+7
2011-01-29copyright year 2011Max Kellermann1-1/+1
2010-11-18replay_gain_ape: parse replay gain from APE tagsMax Kellermann1-7/+5
Based on the APE reader.
2009-12-31Update copyright notices.Avuton Olrich1-1/+1
2009-09-24listen: handle fatal errors with GErrorMax Kellermann1-1/+6
Don't call g_error(), which will abort the process and dump core.
2009-03-13all: Update copyright header.Avuton Olrich1-6/+7
This updates the copyright header to all be the same, which is pretty much an update of where to mail request for a copy of the GPL and the years of the MPD project. This also puts all committers under 'The Music Player Project' umbrella. These entries should go individually in the AUTHORS file, for consistancy.
2009-02-24listen: no CamelCaseMax Kellermann1-3/+3
Renamed functions.
2008-12-30main: use the GLib main loopMax Kellermann1-7/+0
This is a rather huge patch, which unfortunately cannot be splitted. Instead of using our custom ioops.h library, convert everything to use the GLib main loop.
2008-12-30listen: eliminated freeAllListenSockets()Max Kellermann1-1/+0
Merged freeAllListenSockets() into closeAllListenSockets(), because this is its only caller.
2008-10-31added prefix to header macrosMax Kellermann1-2/+2
"LOG_H" is a macro which is also used by ffmpeg/log.h. This is ffmpeg's fault, because short macros should be reserved for applications, but since it's always a good idea to choose prefixed macro names, even for applications, we are going to do that in MPD.
2008-10-08don't include os_compat.hMax Kellermann1-1/+1
When there are standardized headers, use these instead of the bloated os_compat.h.
2008-04-12clean up CPP includesMax Kellermann1-1/+0
Try to only include headers which are really needed. We should particularly check all "headers including other headers". The long-term goal is to have a manageable, small API for plugins (decoders, output) without so many mpd internals cluttering the namespace. git-svn-id: https://svn.musicpd.org/mpd/trunk@7319 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2008-01-03Cleanup #includes of standard system headers and put them in one placeEric Wong1-5/+1
This will make refactoring features easier, especially now that pthreads support and larger refactorings are on the horizon. Hopefully, this will make porting to other platforms (even non-UNIX-like ones for masochists) easier, too. os_compat.h will house all the #includes for system headers considered to be the "core" of MPD. Headers for optional features will be left to individual source files. git-svn-id: https://svn.musicpd.org/mpd/trunk@7130 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2007-06-01Removing the getBoundPort() function and just making boundPort an extern.J. Alexander Treuman1-2/+2
git-svn-id: https://svn.musicpd.org/mpd/trunk@6445 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2007-04-05The massive copyright updateAvuton Olrich1-1/+1
git-svn-id: https://svn.musicpd.org/mpd/trunk@5834 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2007-01-11Added zeroconf service publishing using avahiJim Ramsay1-0/+2
git-svn-id: https://svn.musicpd.org/mpd/trunk@5238 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-08-20Fix warnings for -Wmissing-prototypesAvuton Olrich1-3/+3
Add -Wmissing-prototypes if compiling with gcc Static where possible git-svn-id: https://svn.musicpd.org/mpd/trunk@4657 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-20Add mpd-indent.shAvuton Olrich1-1/+1
Indent the entire tree, hopefully we can keep it indented. git-svn-id: https://svn.musicpd.org/mpd/trunk@4410 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-14Change shank's email addressJ. Alexander Treuman1-1/+1
git-svn-id: https://svn.musicpd.org/mpd/trunk@4333 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-14[CLEANUP] remove unused functionAvuton Olrich1-2/+0
git-svn-id: https://svn.musicpd.org/mpd/trunk@4331 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-13Huge header update, update the copyright and addAvuton Olrich1-1/+1
the GPL header where necessary git-svn-id: https://svn.musicpd.org/mpd/trunk@4317 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2005-11-16DJWLindenaar balanced tree and master process patchQball Cow1-0/+1
git-svn-id: https://svn.musicpd.org/mpd/trunk@3669 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2005-03-13change some header includes so that we can compile on OS XWarren Dukes1-1/+1
git-svn-id: https://svn.musicpd.org/mpd/trunk@3067 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2005-03-06config file change! now 'port' is optional and 'db_file' is required!Warren Dukes1-1/+1
also, should have better error reporting when failing to open playlist or music directory's, or writing the db, etc git-svn-id: https://svn.musicpd.org/mpd/trunk@3027 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2004-11-03now one can specify multiple bind_to_addressesWarren Dukes1-3/+13
git-svn-id: https://svn.musicpd.org/mpd/trunk@2501 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2004-11-03remove vim &*(@Warren Dukes1-1/+0
git-svn-id: https://svn.musicpd.org/mpd/trunk@2500 09075e82-0dd4-0310-85a5-a0d7c8717e4f