diff options
author | mhutch <m.j.hutchinson@gmail.com> | 2015-12-16 04:57:00 +0300 |
---|---|---|
committer | mhutch <m.j.hutchinson@gmail.com> | 2015-12-16 04:57:00 +0300 |
commit | 8e39890eec07d9902079d22a326cdf2301ca9795 (patch) | |
tree | 311e4ab64853d2684d240d87f2325138e10f166f /main | |
parent | 71707ae2bf3191be6022859fb5b69ad5a12b17b1 (diff) |
[mdtool] Fix tools that depend on PlatformService
e.g. for mimetype lookup
Diffstat (limited to 'main')
-rw-r--r-- | main/src/core/MonoDevelop.Ide/AssemblyInfo.cs | 1 | ||||
-rw-r--r-- | main/src/core/MonoDevelop.Ide/MonoDevelop.Ide/DesktopService.cs | 9 | ||||
-rw-r--r-- | main/src/tools/mdtool/mdtool.csproj | 4 | ||||
-rw-r--r-- | main/src/tools/mdtool/src/mdtool.cs | 3 |
4 files changed, 17 insertions, 0 deletions
diff --git a/main/src/core/MonoDevelop.Ide/AssemblyInfo.cs b/main/src/core/MonoDevelop.Ide/AssemblyInfo.cs index f5110291c3..30c20c8dbd 100644 --- a/main/src/core/MonoDevelop.Ide/AssemblyInfo.cs +++ b/main/src/core/MonoDevelop.Ide/AssemblyInfo.cs @@ -32,3 +32,4 @@ using System.Runtime.CompilerServices; [assembly: InternalsVisibleTo("MonoDevelop.CSharpBinding.AspNet")] [assembly: InternalsVisibleTo("MonoDevelop.GtkCore")] [assembly: InternalsVisibleTo("MonoDevelop.PackageManagement")] +[assembly: InternalsVisibleTo("mdtool")] diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide/DesktopService.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide/DesktopService.cs index 8455c21735..22406f91de 100644 --- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide/DesktopService.cs +++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide/DesktopService.cs @@ -52,6 +52,11 @@ namespace MonoDevelop.Ide public static void Initialize () { + Initialize (false); + } + + internal static void Initialize (bool noGui) + { if (platformService != null) return; object[] platforms = AddinManager.GetExtensionObjects ("/MonoDevelop/Core/PlatformService"); @@ -62,6 +67,10 @@ namespace MonoDevelop.Ide LoggingService.LogFatalError ("A platform service implementation has not been found."); } PlatformService.Initialize (); + + if (noGui) + return; + if (PlatformService.CanOpenTerminal) Runtime.ProcessService.SetExternalConsoleHandler (PlatformService.StartConsoleProcess); diff --git a/main/src/tools/mdtool/mdtool.csproj b/main/src/tools/mdtool/mdtool.csproj index 7d0cbfbf99..227e5b96d6 100644 --- a/main/src/tools/mdtool/mdtool.csproj +++ b/main/src/tools/mdtool/mdtool.csproj @@ -51,6 +51,10 @@ <Name>Mono.Addins.Setup</Name> <Private>False</Private> </ProjectReference> + <ProjectReference Include="..\..\core\MonoDevelop.Ide\MonoDevelop.Ide.csproj"> + <Project>{27096E7F-C91C-4AC6-B289-6897A701DF21}</Project> + <Name>MonoDevelop.Ide</Name> + </ProjectReference> </ItemGroup> <ItemGroup> <Compile Include="src\AssemblyInfo.cs" /> diff --git a/main/src/tools/mdtool/src/mdtool.cs b/main/src/tools/mdtool/src/mdtool.cs index e3f82aad9a..903e9ff3fd 100644 --- a/main/src/tools/mdtool/src/mdtool.cs +++ b/main/src/tools/mdtool/src/mdtool.cs @@ -135,6 +135,9 @@ class MonoDevelopProcessHost return badInput? 1 : 0; } + //needed for mimetype service etc + MonoDevelop.Ide.DesktopService.Initialize (true); + var task = tool.Run (toolArgs); task.ContinueWith ((t) => sc.ExitLoop ()); sc.RunMainLoop (); |