diff options
Diffstat (limited to 'plugins/pychrysa/gtkext/bufferdisplay.c')
-rw-r--r-- | plugins/pychrysa/gtkext/bufferdisplay.c | 19 |
1 files changed, 7 insertions, 12 deletions
diff --git a/plugins/pychrysa/gtkext/bufferdisplay.c b/plugins/pychrysa/gtkext/bufferdisplay.c index a6e5327..9aa1bca 100644 --- a/plugins/pychrysa/gtkext/bufferdisplay.c +++ b/plugins/pychrysa/gtkext/bufferdisplay.c @@ -66,7 +66,7 @@ PyTypeObject *get_python_buffer_display_type(void) .tp_name = "pychrysalide.gtkext.BufferDisplay", .tp_basicsize = sizeof(PyGObject), - .tp_flags = Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HEAPTYPE, + .tp_flags = Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, .tp_doc = "PyChrysalide buffer display.", @@ -78,12 +78,7 @@ PyTypeObject *get_python_buffer_display_type(void) static PyTypeObject *result = NULL; if (result == NULL) - { - result = calloc(1, sizeof(PyTypeObject)); - - memcpy(result, &py_buffer_display_type, sizeof(PyTypeObject)); - - } + result = define_python_dynamic_type(&py_buffer_display_type); return result; @@ -104,17 +99,17 @@ PyTypeObject *get_python_buffer_display_type(void) bool register_python_buffer_display(PyObject *module) { - PyTypeObject *py_buffer_display_type; /* Type Python 'Bufferdisplay' */ + bool result; /* Bilan à retourner */ + PyTypeObject *py_buffer_display_type; /* Type Python 'BufferDisplay' */ PyObject *dict; /* Dictionnaire du module */ py_buffer_display_type = get_python_buffer_display_type(); dict = PyModule_GetDict(module); - if (!register_class_for_pygobject(dict, GTK_TYPE_BUFFER_DISPLAY, - py_buffer_display_type, get_python_display_panel_type())) - return false; + result = register_class_for_pygobject(dict, GTK_TYPE_BUFFER_DISPLAY, + py_buffer_display_type, get_python_display_panel_type()); - return true; + return result; } |