Skip to content

Commit cbaf344

Browse files
authored
Fix GetEffectiveNamespace not going up the tree properly (#1909)
Also replaced recursion with while loop
1 parent e4979d1 commit cbaf344

File tree

1 file changed

+6
-5
lines changed

1 file changed

+6
-5
lines changed

src/Generator/Generators/CLI/CLITypeReferences.cs

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -71,14 +71,15 @@ public CLITypeReference GetTypeReference(Declaration decl)
7171

7272
static Namespace GetEffectiveNamespace(Declaration decl)
7373
{
74-
if (decl == null || decl.Namespace == null)
74+
if (decl == null)
7575
return null;
7676

77-
var @namespace = decl.Namespace as Namespace;
78-
if (@namespace != null)
79-
return @namespace;
77+
var declContext = decl.Namespace;
8078

81-
return GetEffectiveNamespace(@namespace);
79+
while (declContext != null && declContext is not Namespace)
80+
declContext = declContext.Namespace;
81+
82+
return declContext as Namespace;
8283
}
8384

8485
public void Process(Namespace @namespace, bool filterNamespaces = false)

0 commit comments

Comments
 (0)