aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sources/pyside6/libpyside/dynamicqmetaobject.cpp3
-rw-r--r--sources/pyside6/libpyside/pysideslot.cpp6
-rw-r--r--sources/pyside6/libpyside/pysideslot_p.h1
-rw-r--r--sources/pyside6/libpyside/pysidestaticstrings.cpp1
-rw-r--r--sources/pyside6/libpyside/pysidestaticstrings.h1
5 files changed, 6 insertions, 6 deletions
diff --git a/sources/pyside6/libpyside/dynamicqmetaobject.cpp b/sources/pyside6/libpyside/dynamicqmetaobject.cpp
index a3a16b6a0..5a4c339b2 100644
--- a/sources/pyside6/libpyside/dynamicqmetaobject.cpp
+++ b/sources/pyside6/libpyside/dynamicqmetaobject.cpp
@@ -10,6 +10,7 @@
#include "pysideslot_p.h"
#include "pysideqenum.h"
#include "pyside_p.h"
+#include "pysidestaticstrings.h"
#include <shiboken.h>
@@ -608,7 +609,7 @@ void MetaObjectBuilderPrivate::parsePythonType(PyTypeObject *type)
}
}
- AutoDecRef slotAttrName(String::fromCString(PYSIDE_SLOT_LIST_ATTR));
+ PyObject *slotAttrName = PySide::PySideMagicName::slot_list_attr();
// PYSIDE-315: Now take care of the rest.
// Signals and slots should be separated, unless the types are modified, later.
// We check for this using "is_sorted()". Sorting no longer happens at all.
diff --git a/sources/pyside6/libpyside/pysideslot.cpp b/sources/pyside6/libpyside/pysideslot.cpp
index 9b0f1f4e0..32f629ade 100644
--- a/sources/pyside6/libpyside/pysideslot.cpp
+++ b/sources/pyside6/libpyside/pysideslot.cpp
@@ -3,6 +3,7 @@
#include "pysidesignal_p.h"
#include "pysideslot_p.h"
+#include "pysidestaticstrings.h"
#include <shiboken.h>
@@ -95,7 +96,6 @@ int slotTpInit(PyObject *self, PyObject *args, PyObject *kw)
PyObject *slotCall(PyObject *self, PyObject *args, PyObject * /* kw */)
{
- static PyObject *pySlotName = nullptr;
PyObject *callback = nullptr;
if (!PyArg_UnpackTuple(args, "Slot.__call__", 1, 1, &callback))
@@ -117,11 +117,9 @@ PyObject *slotCall(PyObject *self, PyObject *args, PyObject * /* kw */)
const QByteArray signature =
returnType + ' ' + data->slotData->name + '(' + data->slotData->args + ')';
- if (!pySlotName)
- pySlotName = String::fromCString(PYSIDE_SLOT_LIST_ATTR);
-
PyObject *pySignature = String::fromCString(signature);
PyObject *signatureList = nullptr;
+ PyObject *pySlotName = PySide::PySideMagicName::slot_list_attr();
if (PyObject_HasAttr(callback, pySlotName)) {
signatureList = PyObject_GetAttr(callback, pySlotName);
} else {
diff --git a/sources/pyside6/libpyside/pysideslot_p.h b/sources/pyside6/libpyside/pysideslot_p.h
index 695b7935c..7f3c03cf7 100644
--- a/sources/pyside6/libpyside/pysideslot_p.h
+++ b/sources/pyside6/libpyside/pysideslot_p.h
@@ -4,7 +4,6 @@
#define PYSIDE_SLOT_P_H
#include <sbkpython.h>
-#define PYSIDE_SLOT_LIST_ATTR "_slots"
namespace PySide { namespace Slot {
void init(PyObject* module);
diff --git a/sources/pyside6/libpyside/pysidestaticstrings.cpp b/sources/pyside6/libpyside/pysidestaticstrings.cpp
index 92f4b204c..9105fff6a 100644
--- a/sources/pyside6/libpyside/pysidestaticstrings.cpp
+++ b/sources/pyside6/libpyside/pysidestaticstrings.cpp
@@ -34,5 +34,6 @@ STATIC_STRING_IMPL(doc, "__doc__")
STATIC_STRING_IMPL(func, "__func__")
STATIC_STRING_IMPL(name, "__name__")
STATIC_STRING_IMPL(property_methods, "__property_methods__")
+STATIC_STRING_IMPL(slot_list_attr, "_slots")
} // namespace PyMagicName
} // namespace PySide
diff --git a/sources/pyside6/libpyside/pysidestaticstrings.h b/sources/pyside6/libpyside/pysidestaticstrings.h
index 1514c3f45..3d00fac68 100644
--- a/sources/pyside6/libpyside/pysidestaticstrings.h
+++ b/sources/pyside6/libpyside/pysidestaticstrings.h
@@ -30,6 +30,7 @@ PYSIDE_API PyObject *doc();
PYSIDE_API PyObject *func();
PYSIDE_API PyObject *name();
PYSIDE_API PyObject *property_methods();
+PYSIDE_API PyObject *slot_list_attr();
} // namespace PyMagicName
} // namespace PySide