ports/multimedia/xbmc/files/patch-headless
Ruslan Makhmatkhanov f8285fcd88 - update to 12.0 [1]
- fix build with ffmpeg
- add --headless option to run xbmc w/o gui [2]

PR:		175933 [1]
PR: 174996 [2]
Submitted by:	Leo Schmitt <neomorphs@gmail.com> [1] (original patch)
                Mickael Maillot <mickael.maillot@gmail.com> (maintainer, final patch)
                Alexander Yerenkow <yerenkow@gmail.com> [2]
2013-03-08 19:34:05 +00:00

83 lines
2.6 KiB
Text

From d9d80bbf6c34fa546fc81299255fb31a5ec1a7ea Mon Sep 17 00:00:00 2001
From: Marc <mhocking@home-workstation.localdomain>
Date: Thu, 7 Jun 2012 17:27:26 +0100
Subject: [PATCH 3/3] Allow XBMC to run headless .i.e. No GUI
---
xbmc/main.cpp | 2 ++
xbmc/settings/AppParamParser.cpp | 9 +++++++++
xbmc/settings/AppParamParser.h | 2 ++
3 files changed, 13 insertions(+)
diff --git xbmc/main/main.cpp xbmc/main/main.cpp
index 0b0274a..6f9229b 100644
--- xbmc/main/main.cpp
+++ xbmc/main/main.cpp
@@ -82,6 +82,8 @@ int main(int argc, char* argv[])
#ifndef _WIN32
CAppParamParser appParamParser;
appParamParser.Parse((const char **)argv, argc);
+
+ renderGUI = appParamParser.renderGUI();
#endif
return XBMC_Run(renderGUI);
}
diff --git xbmc/settings/AppParamParser.cpp xbmc/settings/AppParamParser.cpp
index 0302105..5a4627c 100644
--- xbmc/settings/AppParamParser.cpp
+++ xbmc/settings/AppParamParser.cpp
@@ -39,6 +39,7 @@
CAppParamParser::CAppParamParser()
{
m_testmode = false;
+ m_renderGUI = true;
}
void CAppParamParser::Parse(const char* argv[], int nArgs)
@@ -107,6 +108,7 @@ void CAppParamParser::DisplayHelp()
printf(" --test\t\tEnable test mode. [FILE] required.\n");
printf(" --settings=<filename>\t\tLoads specified file after advancedsettings.xml replacing any settings specified\n");
printf(" \t\t\t\tspecified file must exist in special://xbmc/system/\n");
+ printf(" --headless\t\tRun XBMC headless, i.e. No GUI.\n");
exit(0);
}
@@ -135,6 +137,8 @@ void CAppParamParser::ParseArg(const CStdString &arg)
g_application.SetEnableLegacyRes(true);
else if (arg == "--test")
m_testmode = true;
+ else if (arg == "--headless")
+ m_renderGUI = false;
else if (arg.substr(0, 11) == "--settings=")
g_advancedSettings.AddSettingsFile(arg.substr(11));
else if (arg.length() != 0 && arg[0] != '-')
@@ -147,6 +151,11 @@ void CAppParamParser::ParseArg(const CStdString &arg)
}
}
+bool CAppParamParser::renderGUI()
+{
+ return(m_renderGUI);
+}
+
void CAppParamParser::PlayPlaylist()
{
if (m_playlist.Size() > 0)
diff --git xbmc/settings/AppParamParser.h xbmc/settings/AppParamParser.h
index fb21081..c201e48 100644
--- xbmc/settings/AppParamParser.h
+++ xbmc/settings/AppParamParser.h
@@ -27,9 +27,11 @@ class CAppParamParser
public:
CAppParamParser();
void Parse(const char* argv[], int nArgs);
+ bool renderGUI();
private:
bool m_testmode;
+ bool m_renderGUI;
CFileItemList m_playlist;
void ParseArg(const CStdString &arg);
void DisplayHelp();
--
1.7.10.2