We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
2 parents 0ebf53b + 6b63e03 commit 501ba4bCopy full SHA for 501ba4b
csharp/extractor/Semmle.Extraction/Context.cs
@@ -35,12 +35,14 @@ public class Context
35
// A recursion guard against writing to the trap file whilst writing an id to the trap file.
36
private bool writingLabel = false;
37
38
+ private readonly Queue<IEntity> labelQueue = new();
39
+
40
protected void DefineLabel(IEntity entity)
41
{
42
if (writingLabel)
43
44
// Don't define a label whilst writing a label.
- PopulateLater(() => DefineLabel(entity));
45
+ labelQueue.Enqueue(entity);
46
}
47
else
48
@@ -52,6 +54,10 @@ protected void DefineLabel(IEntity entity)
52
54
finally
53
55
56
writingLabel = false;
57
+ if (labelQueue.Any())
58
+ {
59
+ DefineLabel(labelQueue.Dequeue());
60
+ }
61
62
63
0 commit comments