Skip to content

Commit c7432db

Browse files
authored
PYTHON-3798 add error checking and visit for _type_marker_str (#1291)
1 parent 32b2b32 commit c7432db

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

bson/_cbsonmodule.c

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -469,7 +469,9 @@ static int _load_python_objects(PyObject* module) {
469469
struct module_state *state = GETSTATE(module);
470470

471471
/* Python str for faster _type_marker check */
472-
state->_type_marker_str = PyUnicode_FromString("_type_marker");
472+
if (!(state->_type_marker_str = PyUnicode_FromString("_type_marker"))) {
473+
return 1;
474+
}
473475

474476
if (_load_object(&state->Binary, "bson.binary", "Binary") ||
475477
_load_object(&state->Code, "bson.code", "Code") ||
@@ -3043,6 +3045,7 @@ static int _cbson_traverse(PyObject *m, visitproc visit, void *arg) {
30433045
Py_VISIT(GETSTATE(m)->MaxKey);
30443046
Py_VISIT(GETSTATE(m)->UTC);
30453047
Py_VISIT(GETSTATE(m)->REType);
3048+
Py_VISIT(GETSTATE(m)->_type_marker_str);
30463049
return 0;
30473050
}
30483051

0 commit comments

Comments
 (0)