aboutsummaryrefslogtreecommitdiffstats
path: root/src/Main.cxx (unfollow)
Commit message (Collapse)AuthorFilesLines
2014-02-01Main: don't measure DatabaseGlobalDeinit() timeMax Kellermann1-4/+0
Useless information.
2014-01-30db: add compile-time option to disable databaseMax Kellermann1-3/+20
2014-01-30db/update: convert to OO APIMax Kellermann1-6/+11
Move global variables into the new classes. That may allow multiple update threads for multiple databases one day.
2014-01-30Main, OutputThread: increase kernel timer slack (Linux)Max Kellermann1-0/+5
Allows the kernel to combine timer wakeups with other processes, reducing power usage.
2014-01-29InotifyUpdate: pass EventLoop to mpd_inotify_init()Max Kellermann1-1/+2
2014-01-29Listen: pass EventLoop to listen_global_init()Max Kellermann1-1/+1
Don't use global variables.
2014-01-28OutputAll: convert to class, move instance to class PartitionMax Kellermann1-4/+2
Another big chunk of code for multi-player support.
2014-01-26neighbor: new subsystem to detect file servers on the local networkMax Kellermann1-0/+30
This commit adds the NeighborPlugin API which can be used to detect nearby file servers that can be used by input plugins. This list of servers is exported using the new "listneighbors" command. The idle even "neighbor" notifies interested clients when a new neighbor is found or an existing one is lost. There's a lot missing currently: protocol&user documentation, and a way to "mount" remote servers into the music database. Obviously, some code from the UPnP database plugin can be moved to a neighbor plugin.
2014-01-24Mixer*: move to mixer/Max Kellermann1-1/+1
2014-01-24Database*: move to db/Max Kellermann1-4/+4
2014-01-24Sticker*: move to sticker/Max Kellermann1-1/+1
2014-01-24move daemonization code to unix/Max Kellermann1-2/+2
2014-01-24Input*: move to input/Max Kellermann1-1/+1
2014-01-24Client*: move to client/Max Kellermann1-2/+2
2014-01-24Update*: move to update/Max Kellermann1-2/+2
2014-01-24Config*: move to config/Max Kellermann1-4/+4
2014-01-24Zeroconf*: move to zeroconf/Max Kellermann1-1/+1
2014-01-24archive/*: move to archive/plugins/Max Kellermann1-1/+1
2014-01-24decoder/*: move to decoder/plugins/Max Kellermann1-1/+1
2014-01-23output/*: move to output/plugins/Max Kellermann1-1/+1
2014-01-23playlist/*: move to playlist/plugins/Max Kellermann1-1/+1
2014-01-22Main: glue_mapper_init() returns true if GetUserMusicDir() failsMax Kellermann1-1/+1
Not a fatal error. Fixes assertion failure.
2014-01-18Daemon: fork as early as possibleMax Kellermann1-1/+2
Keep the parent process around until MPD has finished initializing. This is important for libraries that are allergic to fork(), such as libupnp.
2014-01-18Main: make variables more localMax Kellermann1-13/+9
2014-01-18Main: eliminate variable "success"Max Kellermann1-10/+7
2014-01-13copyright year 2014Max Kellermann1-1/+1
2014-01-11DatabasePlugin: add interface DatabaseListenerMax Kellermann1-1/+1
Allow database plugins to announce that they have been modified.
2013-12-15configure.ac: add option "--disable-glib"Max Kellermann1-1/+7
Allows building without GLib. This fails to compile currently, because GLib is still used in the MPD core.
2013-12-08Main: use standard directory APIDenis Krjuchkov1-7/+4
2013-11-29PcmConvert: add pcm_convert_global_init()Max Kellermann1-2/+2
Wrapper for pcm_resample_global_init(), just in case other PCM libraries need initialization, too.
2013-11-28include cleanup using iwyuMax Kellermann1-3/+0
2013-11-26Main.cxx: initialize winsock before creating IO threadDenis Krjuchkov1-1/+1
Otherwise sockets can't be created during IO thread initialization.
2013-11-25Volume, Output: use new class PeriodClock instead of GTimerMax Kellermann1-1/+0
2013-11-24Stats: use monotonic clock instead of GTimerMax Kellermann1-1/+0
Reduce GLib usage.
2013-11-04Log: add level "DEFAULT"Max Kellermann1-8/+8
Map LogLevel::INFO to G_LOG_LEVEL_INFO, and LogLevel::DEFAULT to G_LOG_LEVEL_MESSAGE. Now client connect/disconnect message are only logged on log_level "secure".
2013-10-30increase default buffer size to 4 MBMax Kellermann1-1/+1
2 MB was too small for cross-fading a 24 bit file. Increasing to 4 MB is still not too large for weak machines, but is enough for cross-fading.
2013-10-30Main: check the g_get_user_special_dir() resultMax Kellermann1-4/+7
Fixes crash.
2013-10-20Main: convert anonymous enum to constexprMax Kellermann1-4/+2
2013-10-20*Commands: move to src/command/Max Kellermann1-1/+1
2013-10-19*: use references instead of pointersMax Kellermann1-1/+1
2013-10-17fs/Path: rename to AllocatedPathMax Kellermann1-10/+13
The new class Path only holds a string pointer without being responsible for allocation/deallocation. The FileSystem.hxx library accepts Path arguments instead of AllocatedPath, to avoid forcing callers to allocate another string object.
2013-10-17fs/Path: move configuration code to Config.cxxMax Kellermann1-1/+2
2013-10-17UpdateGlue: never pass null to update_enqueue()Max Kellermann1-1/+1
2013-10-17Main: use ThreadId instead of GThread*Max Kellermann1-2/+3
2013-10-15ConfigData: use std::string for config_param::valueMax Kellermann1-5/+6
2013-10-02replay_gain_*.h: rename to *.hxxMax Kellermann1-1/+1
2013-10-02Stats: rename stats.h to Stats.hxxMax Kellermann1-4/+1
2013-10-02Log: new logging library APIMax Kellermann1-20/+24
Prepare to migrate away from GLib. Currently, we're still using GLib as a backend.
2013-09-26PlayerThread: use {decoder,player}_control referencesMax Kellermann1-1/+1
2013-09-26Main: fix crash if no database was configuredMax Kellermann1-0/+3
Add nullptr check, and return early from glue_db_init_and_load().