[Bf-blender-cvs] [dc61a63e3f1] master: PyAPI: include all members in dir(bpy.types)

Campbell Barton noreply at git.blender.org
Fri Feb 19 12:16:55 CET 2021


Commit: dc61a63e3f1bb3773677fb009fd787af7bd5c727
Author: Campbell Barton
Date:   Fri Feb 19 19:10:48 2021 +1100
Branches: master
https://developer.blender.org/rBdc61a63e3f1bb3773677fb009fd787af7bd5c727

PyAPI: include all members in dir(bpy.types)

C/Python defined types were accessible but not exposed in dir(bpy.types)

===================================================================

M	source/blender/python/intern/bpy_rna.c

===================================================================

diff --git a/source/blender/python/intern/bpy_rna.c b/source/blender/python/intern/bpy_rna.c
index c48a50c5ec6..ad185226aa5 100644
--- a/source/blender/python/intern/bpy_rna.c
+++ b/source/blender/python/intern/bpy_rna.c
@@ -7720,6 +7720,14 @@ static PyObject *bpy_types_module_dir(PyObject *self)
     PyList_APPEND(ret, PyUnicode_FromString(RNA_struct_identifier(srna)));
   }
   RNA_PROP_END;
+
+  /* Include the modules `__dict__` for Python only types. */
+  PyObject *submodule_dict = PyModule_GetDict(self);
+  PyObject *key, *value;
+  Py_ssize_t pos = 0;
+  while (PyDict_Next(submodule_dict, &pos, &key, &value)) {
+    PyList_APPEND(ret, key);
+  }
   return ret;
 }



More information about the Bf-blender-cvs mailing list