Skip to content

Commit 5b73bef

Browse files
committed
[GR-29645] Synchronize CallTarget cache in MakeMayRaiseWrapperNode.
PullRequest: graalpython/1638
2 parents 6e2f2aa + 11e8220 commit 5b73bef

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

graalpython/com.oracle.graal.python/src/com/oracle/graal/python/builtins/modules/PythonCextBuiltins.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,9 @@
6060
import java.text.ParsePosition;
6161
import java.util.ArrayList;
6262
import java.util.Arrays;
63+
import java.util.Collections;
6364
import java.util.List;
65+
import java.util.Map;
6466
import java.util.WeakHashMap;
6567
import java.util.logging.Level;
6668

@@ -2436,7 +2438,7 @@ static Object doDirect(VirtualFrame frame, @SuppressWarnings("unused") PythonMod
24362438
@Builtin(name = "make_may_raise_wrapper", minNumOfPositionalArgs = 1, maxNumOfPositionalArgs = 2)
24372439
@GenerateNodeFactory
24382440
abstract static class MakeMayRaiseWrapperNode extends PythonBuiltinNode {
2439-
private static final WeakHashMap<RootCallTarget, WeakReference<RootCallTarget>> weakCallTargetMap = new WeakHashMap<>();
2441+
private static final Map<RootCallTarget, WeakReference<RootCallTarget>> weakCallTargetMap = Collections.synchronizedMap(new WeakHashMap<>());
24402442

24412443
@Specialization
24422444
@TruffleBoundary

0 commit comments

Comments
 (0)