Revert "Main: run the OS X native event loop"

This reverts commit f0be48ff90
(except for the NEWS entry).

If libdispatch (GCD) is used before forking, it
can't safely be used again after forking.
This commit is contained in:
NanoTech 2014-10-12 16:23:33 -06:00 committed by Max Kellermann
parent 7350144ab3
commit 6ad1e4d99a
4 changed files with 0 additions and 51 deletions

View File

@ -130,7 +130,6 @@ libmpd_a_SOURCES = \
src/IOThread.cxx src/IOThread.hxx \
src/Instance.cxx src/Instance.hxx \
src/win32/Win32Main.cxx \
src/osx/OSXMain.cxx \
src/GlobalEvents.cxx src/GlobalEvents.hxx \
src/MixRampInfo.hxx \
src/MusicBuffer.cxx src/MusicBuffer.hxx \

View File

@ -401,8 +401,6 @@ int main(int argc, char *argv[])
{
#ifdef WIN32
return win32_main(argc, argv);
#elif __APPLE__
return osx_main(argc, argv);
#else
return mpd_main(argc, argv);
#endif

View File

@ -75,15 +75,4 @@ win32_app_stopping(void);
#endif
#ifdef __APPLE__
/* Runs the OS X native event loop in the main thread, and runs
* mpd_main on a new thread. This lets CoreAudio receive route
* change notifications (e.g. plugging or unplugging headphones).
* All hardware output on OS X ultimately uses CoreAudio internally.
*/
int osx_main(int argc, char *argv[]);
#endif
#endif

View File

@ -1,37 +0,0 @@
/*
* Copyright (C) 2003-2014 The Music Player Daemon Project
* http://www.musicpd.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
#include "config.h"
#include "Main.hxx"
#ifdef __APPLE__
#include <stdlib.h>
#include <dispatch/dispatch.h>
int osx_main(int argc, char *argv[])
{
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
exit(mpd_main(argc, argv));
});
dispatch_main();
return EXIT_FAILURE; // unreachable, because dispatch_main never returns
}
#endif