private void ReportResult(RemoteTask task, State state, ExceptionDescriptor exception, string desc)
        {
            if (exception == null)
            {
                _server.TaskFinished(task, string.Empty, state.ToTaskResult());
            }
            else
            {
                _server.TaskOutput(task, "MUUHU", TaskOutputType.STDERR);
                _server.TaskOutput(task, "MUUHU", TaskOutputType.DEBUGTRACE);
                _server.TaskOutput(task, "\u2713", TaskOutputType.STDOUT);
                _server.TaskOutput(task, "\u2717", TaskOutputType.STDOUT);
                _server.TaskException(task, new[] { exception.ToTaskException(desc) });

                _server.TaskOutput(task, "xxxxxxxxxxxxxxxxxxxxxxxxxx", TaskOutputType.STDOUT);
                _server.TaskException(task, new[] { exception.ToTaskException(desc) });

                _server.TaskFinished(task, exception.Type.Name, state.ToTaskResult());
            }
        }