From 1f8bb274ffe45a3bd9ade8655e3e1ec25581caf8 Mon Sep 17 00:00:00 2001 From: Greg Winterstein Date: Thu, 7 Mar 2024 11:18:09 -0800 Subject: [PATCH] Throw exception in cases where no valid name can be created --- .../Templates/ODataT4CodeGenerator.cs | 5 +++++ .../Templates/ODataT4CodeGenerator.ttinclude | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/src/Microsoft.OData.CodeGen/Templates/ODataT4CodeGenerator.cs b/src/Microsoft.OData.CodeGen/Templates/ODataT4CodeGenerator.cs index 6356cb3f..06e887bf 100644 --- a/src/Microsoft.OData.CodeGen/Templates/ODataT4CodeGenerator.cs +++ b/src/Microsoft.OData.CodeGen/Templates/ODataT4CodeGenerator.cs @@ -3070,6 +3070,11 @@ private string GetValidIdentifier(string name) isFirst = false; } + if (validName.Length < 1) + { + throw new Exception($"Failed to make valid identifier for '{name}'"); + } + if (!char.IsLetter(validName[0]) && validName[0] != DefaultPrefixCharacter) { validName.Insert(0, DefaultPrefixCharacter); diff --git a/src/Microsoft.OData.CodeGen/Templates/ODataT4CodeGenerator.ttinclude b/src/Microsoft.OData.CodeGen/Templates/ODataT4CodeGenerator.ttinclude index ebe7c282..bda70d82 100644 --- a/src/Microsoft.OData.CodeGen/Templates/ODataT4CodeGenerator.ttinclude +++ b/src/Microsoft.OData.CodeGen/Templates/ODataT4CodeGenerator.ttinclude @@ -2925,6 +2925,11 @@ public abstract class ODataClientTemplate : TemplateBase isFirst = false; } + if (validName.Length < 1) + { + throw new Exception($"Failed to make valid identifier for '{name}'"); + } + if (!char.IsLetter(validName[0]) && validName[0] != DefaultPrefixCharacter) { validName.Insert(0, DefaultPrefixCharacter);