Skip to content

Commit 1fab479

Browse files
authored
Merge pull request #305 from AArnott/fix114
Prefer manual code generation over CodeDOM
2 parents 4674c27 + c0ce4fc commit 1fab479

File tree

1 file changed

+9
-12
lines changed

1 file changed

+9
-12
lines changed

src/Nerdbank.GitVersioning.Tasks/AssemblyVersionInfo.cs

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,14 @@ the code is regenerated.
7272
#if NET461
7373
public override bool Execute()
7474
{
75-
if (CodeDomProvider.IsDefinedLanguage(this.CodeLanguage))
75+
// attempt to use local codegen
76+
string fileContent = this.BuildCode();
77+
if (fileContent != null)
78+
{
79+
Directory.CreateDirectory(Path.GetDirectoryName(this.OutputFile));
80+
Utilities.FileOperationWithRetry(() => File.WriteAllText(this.OutputFile, fileContent));
81+
}
82+
else if (CodeDomProvider.IsDefinedLanguage(this.CodeLanguage))
7683
{
7784
using (var codeDomProvider = CodeDomProvider.CreateProvider(this.CodeLanguage))
7885
{
@@ -100,17 +107,7 @@ public override bool Execute()
100107
}
101108
else
102109
{
103-
// attempt to use local codegen
104-
string fileContent = this.BuildCode();
105-
if (fileContent != null)
106-
{
107-
Directory.CreateDirectory(Path.GetDirectoryName(this.OutputFile));
108-
Utilities.FileOperationWithRetry(() => File.WriteAllText(this.OutputFile, fileContent));
109-
}
110-
else
111-
{
112-
this.Log.LogError("CodeDomProvider not available for language: {0}. No version info will be embedded into assembly.", this.CodeLanguage);
113-
}
110+
this.Log.LogError("CodeDomProvider not available for language: {0}. No version info will be embedded into assembly.", this.CodeLanguage);
114111
}
115112

116113
return !this.Log.HasLoggedErrors;

0 commit comments

Comments
 (0)