avoid string -> unicode conversion when registering classes, also avoid unlikely but possible crash if the py-class returns new instances of PyObjects it doesnt own when registering the class.
This commit is contained in:
@@ -38,6 +38,8 @@ PyObject *bpy_intern_str_bl_rna;
|
||||
PyObject *bpy_intern_str_order;
|
||||
PyObject *bpy_intern_str_attr;
|
||||
PyObject *bpy_intern_str___slots__;
|
||||
PyObject *bpy_intern_str___name__;
|
||||
PyObject *bpy_intern_str___doc__;
|
||||
|
||||
void bpy_intern_string_init(void)
|
||||
{
|
||||
@@ -47,6 +49,8 @@ void bpy_intern_string_init(void)
|
||||
bpy_intern_str_order = PyUnicode_FromString("order");
|
||||
bpy_intern_str_attr = PyUnicode_FromString("attr");
|
||||
bpy_intern_str___slots__ = PyUnicode_FromString("__slots__");
|
||||
bpy_intern_str___name__ = PyUnicode_FromString("__name__");
|
||||
bpy_intern_str___doc__ = PyUnicode_FromString("__doc__");
|
||||
}
|
||||
|
||||
void bpy_intern_string_exit(void)
|
||||
@@ -57,4 +61,6 @@ void bpy_intern_string_exit(void)
|
||||
Py_DECREF(bpy_intern_str_order);
|
||||
Py_DECREF(bpy_intern_str_attr);
|
||||
Py_DECREF(bpy_intern_str___slots__);
|
||||
Py_DECREF(bpy_intern_str___name__);
|
||||
Py_DECREF(bpy_intern_str___doc__);
|
||||
}
|
||||
|
Reference in New Issue
Block a user