Fix crash in build tool when generating project files with incorrect target setup
This commit is contained in:
@@ -434,7 +434,7 @@ namespace Flax.Build.Projects.VisualStudio
|
|||||||
|
|
||||||
// Collect all unique configurations
|
// Collect all unique configurations
|
||||||
var configurations = new HashSet<SolutionConfiguration>();
|
var configurations = new HashSet<SolutionConfiguration>();
|
||||||
var mainArchitectures = solution.MainProject.Targets.SelectMany(x => x.Architectures).Distinct().ToArray();
|
var mainArchitectures = solution.MainProject?.Targets?.SelectMany(x => x.Architectures).Distinct().ToArray();
|
||||||
foreach (var project in projects)
|
foreach (var project in projects)
|
||||||
{
|
{
|
||||||
if (project.Configurations == null || project.Configurations.Count == 0)
|
if (project.Configurations == null || project.Configurations.Count == 0)
|
||||||
@@ -447,7 +447,7 @@ namespace Flax.Build.Projects.VisualStudio
|
|||||||
foreach (var configuration in project.Configurations)
|
foreach (var configuration in project.Configurations)
|
||||||
{
|
{
|
||||||
// Skip architectures which are not included in the game project
|
// Skip architectures which are not included in the game project
|
||||||
if (!mainArchitectures.Contains(configuration.Architecture))
|
if (mainArchitectures != null && !mainArchitectures.Contains(configuration.Architecture))
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
configurations.Add(new SolutionConfiguration(configuration));
|
configurations.Add(new SolutionConfiguration(configuration));
|
||||||
@@ -726,6 +726,8 @@ namespace Flax.Build.Projects.VisualStudio
|
|||||||
|
|
||||||
void AppendBuildToolCommands(StringBuilder str, string extraArgs)
|
void AppendBuildToolCommands(StringBuilder str, string extraArgs)
|
||||||
{
|
{
|
||||||
|
if (solution.MainProject == null)
|
||||||
|
return;
|
||||||
foreach (var configuration in solution.MainProject.Configurations)
|
foreach (var configuration in solution.MainProject.Configurations)
|
||||||
{
|
{
|
||||||
var cmdLine = string.Format("\"{0}\" -log -mutex -workspace=\"{1}\" -arch={2} -configuration={3} -platform={4} -buildTargets={5}",
|
var cmdLine = string.Format("\"{0}\" -log -mutex -workspace=\"{1}\" -arch={2} -configuration={3} -platform={4} -buildTargets={5}",
|
||||||
|
|||||||
Reference in New Issue
Block a user