https://github.com/python/cpython/commit/34379d0a593e5a76e2f754cdd7fccb79f25a4613
commit: 34379d0a593e5a76e2f754cdd7fccb79f25a4613
branch: main
author: Sam Gross <[email protected]>
committer: colesbury <[email protected]>
date: 2025-02-07T09:44:24-05:00
summary:

gh-117657: Fix data race in `dict_dict_merge` (gh-129755)

Found while running `test_load_attr_module` from `test_opcache` under TSan.

files:
M Objects/dictobject.c

diff --git a/Objects/dictobject.c b/Objects/dictobject.c
index 91cf013a1dc24b..d979cd72b48e69 100644
--- a/Objects/dictobject.c
+++ b/Objects/dictobject.c
@@ -3793,7 +3793,7 @@ dict_dict_merge(PyInterpreterState *interp, PyDictObject 
*mp, PyDictObject *othe
 
             ensure_shared_on_resize(mp);
             dictkeys_decref(interp, mp->ma_keys, IS_DICT_SHARED(mp));
-            mp->ma_keys = keys;
+            set_keys(mp, keys);
             STORE_USED(mp, other->ma_used);
             ASSERT_CONSISTENT(mp);
 

_______________________________________________
Python-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3/lists/python-checkins.python.org/
Member address: [email protected]

Reply via email to