File tree 1 file changed +10
-1
lines changed
1 file changed +10
-1
lines changed Original file line number Diff line number Diff line change @@ -51,6 +51,15 @@ func (an *javaAnalyzer) FallbackSymbol() lib.Symbol {
51
51
}
52
52
53
53
func (an * javaAnalyzer ) FindSymbol (name string ) lib.Symbol {
54
+ return an .findSymbolWithRetries (name , 0 )
55
+ }
56
+
57
+ func (an * javaAnalyzer ) findSymbolWithRetries (name string , retry int ) lib.Symbol {
58
+ if retry > 3 {
59
+ // do not retry more than 3 times or it will cause stack overflow
60
+ return lib .UnresolvedSymbol
61
+ }
62
+
54
63
sym , ok := builtinTypesStore .FindByName (name )
55
64
if ok {
56
65
return sym
@@ -86,7 +95,7 @@ func (an *javaAnalyzer) FindSymbol(name string) lib.Symbol {
86
95
}
87
96
88
97
// if parsed, find the symbol again
89
- return an .FindSymbol (name )
98
+ return an .findSymbolWithRetries (name , retry + 1 )
90
99
}
91
100
92
101
func (an * javaAnalyzer ) markAsUnresolved (name string ) lib.Symbol {
You can’t perform that action at this time.
0 commit comments