private static void HandleUpdaterReturnValue(ManagedProgram program)
 {
   if (program.ExitCode == 0)
   {
     APIUpdaterHelper.UpdateFilesInVCIfNeeded();
   }
   else
   {
     ScriptUpdatingManager.ReportExpectedUpdateFailure();
     if (program.ExitCode > 0)
       APIUpdaterHelper.ReportAPIUpdaterFailure((IEnumerable<string>) program.GetErrorOutput());
     else
       APIUpdaterHelper.ReportAPIUpdaterCrash((IEnumerable<string>) program.GetErrorOutput());
   }
 }
    private static bool StartManagedProgram(string exe, string arguments, CompilerOutputParserBase parser, ref IEnumerable <CompilerMessage> compilerMessages)
    {
        bool result;

        using (ManagedProgram managedProgram = GendarmeValidationRule.ManagedProgramFor(exe, arguments))
        {
            managedProgram.LogProcessStartInfo();
            try
            {
                managedProgram.Start();
            }
            catch
            {
                throw new Exception("Could not start " + exe);
            }
            managedProgram.WaitForExit();
            if (managedProgram.ExitCode == 0)
            {
                result = true;
                return(result);
            }
            compilerMessages = parser.Parse(managedProgram.GetErrorOutput(), managedProgram.GetStandardOutput(), true);
        }
        result = false;
        return(result);
    }
Example #3
0
 internal static void RunManagedProgram(string exe, string args, string workingDirectory, CompilerOutputParserBase parser)
 {
     using (ManagedProgram managedProgram = new ManagedProgram(MonoInstallationFinder.GetMonoInstallation("MonoBleedingEdge"), "4.0", exe, args))
     {
         managedProgram.GetProcessStartInfo().WorkingDirectory = workingDirectory;
         managedProgram.Start();
         managedProgram.WaitForExit();
         if (managedProgram.ExitCode != 0)
         {
             if (parser != null)
             {
                 string[] errorOutput    = managedProgram.GetErrorOutput();
                 string[] standardOutput = managedProgram.GetStandardOutput();
                 IEnumerable <CompilerMessage> enumerable = parser.Parse(errorOutput, standardOutput, true);
                 foreach (CompilerMessage current in enumerable)
                 {
                     Debug.LogPlayerBuildError(current.message, current.file, current.line, current.column);
                 }
             }
             Debug.LogError(string.Concat(new string[]
             {
                 "Failed running ",
                 exe,
                 " ",
                 args,
                 "\n\n",
                 managedProgram.GetAllOutput()
             }));
             throw new Exception(string.Format("{0} did not run properly!", exe));
         }
     }
 }
Example #4
0
 private static void HandleUpdaterReturnValue(ManagedProgram program)
 {
     if (program.ExitCode == 0)
     {
         APIUpdaterHelper.UpdateFilesInVCIfNeeded();
         return;
     }
     ScriptUpdatingManager.ReportExpectedUpdateFailure();
     if (program.ExitCode > 0)
     {
         APIUpdaterHelper.ReportAPIUpdaterFailure(program.GetErrorOutput());
     }
     else
     {
         APIUpdaterHelper.ReportAPIUpdaterCrash(program.GetErrorOutput());
     }
 }
        static void HandleUpdaterReturnValue(ManagedProgram program, string tempOutputPath)
        {
            if (program.ExitCode == 0)
            {
                Console.WriteLine(string.Join(Environment.NewLine, program.GetErrorOutput()));
                CopyUpdatedFiles(tempOutputPath);
                return;
            }

            APIUpdaterManager.ReportExpectedUpdateFailure();
            if (program.ExitCode > 0)
            {
                ReportAPIUpdaterFailure(program.GetErrorOutput());
            }
            else
            {
                ReportAPIUpdaterCrash(program.GetErrorOutput());
            }
        }
        private static void HandleUpdaterReturnValue(ManagedProgram program)
        {
            if (program.ExitCode == 0)
            {
                Console.WriteLine(string.Join(Environment.NewLine, program.GetErrorOutput()));
                UpdateFilesInVCIfNeeded();
                return;
            }

            ScriptUpdatingManager.ReportExpectedUpdateFailure();
            if (program.ExitCode > 0)
            {
                ReportAPIUpdaterFailure(program.GetErrorOutput());
            }
            else
            {
                ReportAPIUpdaterCrash(program.GetErrorOutput());
            }
        }
		private static void RunUpdatingProgram(string executable, string arguments)
		{
			string executable2 = EditorApplication.applicationContentsPath + "/Tools/ScriptUpdater/" + executable;
			ManagedProgram managedProgram = new ManagedProgram(MonoInstallationFinder.GetMonoInstallation("MonoBleedingEdge"), "4.5", executable2, arguments);
			managedProgram.LogProcessStartInfo();
			managedProgram.Start();
			managedProgram.WaitForExit();
			Console.WriteLine(string.Join(Environment.NewLine, managedProgram.GetStandardOutput()));
			if (managedProgram.ExitCode == 0)
			{
				APIUpdaterHelper.UpdateFilesInVCIfNeeded();
			}
			else
			{
				APIUpdaterHelper.ReportAPIUpdaterFailure(managedProgram.GetErrorOutput());
			}
		}
        private static void RunUpdatingProgram(string executable, string arguments)
        {
            string         executable2    = EditorApplication.applicationContentsPath + "/Tools/ScriptUpdater/" + executable;
            ManagedProgram managedProgram = new ManagedProgram(MonoInstallationFinder.GetMonoInstallation("MonoBleedingEdge"), "4.5", executable2, arguments);

            managedProgram.LogProcessStartInfo();
            managedProgram.Start();
            managedProgram.WaitForExit();
            Console.WriteLine(string.Join(Environment.NewLine, managedProgram.GetStandardOutput()));
            if (managedProgram.ExitCode == 0)
            {
                APIUpdaterHelper.UpdateFilesInVCIfNeeded();
            }
            else
            {
                APIUpdaterHelper.ReportAPIUpdaterFailure(managedProgram.GetErrorOutput());
            }
        }