diff options
-rw-r--r-- | sources/pyside2/libpyside/pysideqflags.cpp | 14 | ||||
-rw-r--r-- | sources/shiboken2/libshiboken/sbkenum.cpp | 14 |
2 files changed, 14 insertions, 14 deletions
diff --git a/sources/pyside2/libpyside/pysideqflags.cpp b/sources/pyside2/libpyside/pysideqflags.cpp index d7e6b4f4c..b141ce157 100644 --- a/sources/pyside2/libpyside/pysideqflags.cpp +++ b/sources/pyside2/libpyside/pysideqflags.cpp @@ -175,18 +175,18 @@ namespace QFlags // PYSIDE-747: Here we insert now the full class name. strcpy(qualname, name); // Careful: SbkType_FromSpec does not allocate the string. - PyType_Spec *newspec = new PyType_Spec; - newspec->name = strdup(qualname); - newspec->basicsize = SbkNewQFlagsType_spec.basicsize; - newspec->itemsize = SbkNewQFlagsType_spec.itemsize; - newspec->flags = SbkNewQFlagsType_spec.flags; + PyType_Spec newspec; + newspec.name = strdup(qualname); + newspec.basicsize = SbkNewQFlagsType_spec.basicsize; + newspec.itemsize = SbkNewQFlagsType_spec.itemsize; + newspec.flags = SbkNewQFlagsType_spec.flags; int idx = -1; while (numberMethods[++idx].slot) { assert(SbkNewQFlagsType_slots[idx].slot == numberMethods[idx].slot); SbkNewQFlagsType_slots[idx].pfunc = numberMethods[idx].pfunc; } - newspec->slots = SbkNewQFlagsType_spec.slots; - PyTypeObject *type = (PyTypeObject *)SbkType_FromSpec(newspec); + newspec.slots = SbkNewQFlagsType_spec.slots; + PyTypeObject *type = (PyTypeObject *)SbkType_FromSpec(&newspec); Py_TYPE(type) = &PyType_Type; PySideQFlagsType *flagsType = reinterpret_cast<PySideQFlagsType *>(type); diff --git a/sources/shiboken2/libshiboken/sbkenum.cpp b/sources/shiboken2/libshiboken/sbkenum.cpp index 36f2f48f9..f9a43845a 100644 --- a/sources/shiboken2/libshiboken/sbkenum.cpp +++ b/sources/shiboken2/libshiboken/sbkenum.cpp @@ -720,11 +720,11 @@ newTypeWithName(const char *name, { // Careful: SbkType_FromSpec does not allocate the string. PyType_Slot newslots[99] = {}; // enough but not too big for the stack - auto *newspec = new PyType_Spec; - newspec->name = strdup(name); - newspec->basicsize = SbkNewType_spec.basicsize; - newspec->itemsize = SbkNewType_spec.itemsize; - newspec->flags = SbkNewType_spec.flags; + PyType_Spec newspec; + newspec.name = strdup(name); + newspec.basicsize = SbkNewType_spec.basicsize; + newspec.itemsize = SbkNewType_spec.itemsize; + newspec.flags = SbkNewType_spec.flags; // we must append all the number methods, so rebuild everything: int idx = 0; while (SbkNewType_slots[idx].slot) { @@ -734,8 +734,8 @@ newTypeWithName(const char *name, } if (numbers_fromFlag) copyNumberMethods(numbers_fromFlag, newslots, &idx); - newspec->slots = newslots; - auto *type = reinterpret_cast<PyTypeObject *>(SbkType_FromSpec(newspec)); + newspec.slots = newslots; + auto *type = reinterpret_cast<PyTypeObject *>(SbkType_FromSpec(&newspec)); Py_TYPE(type) = SbkEnumType_TypeF(); auto *enumType = reinterpret_cast<SbkEnumType *>(type); |