diff --git a/sources/pyside6/libpyside/pyside.cpp b/sources/pyside6/libpyside/pyside.cpp
index e4938d486..e05074771 100644
--- a/sources/pyside6/libpyside/pyside.cpp
+++ b/sources/pyside6/libpyside/pyside.cpp
@@ -1148,6 +1148,7 @@ static void formatPyObject(PyObject *obj, QDebug &debug)
         debug << "False";
         return;
     }
+    debug << "refcnt=" << obj->ob_refcnt << ' ';
     if (PyType_Check(obj) == 0)
         debug << pyTypeName(obj) << ": ";
     formatPyObjectValue(obj, debug);
diff --git a/sources/pyside6/libpyside/pysidesignal.cpp b/sources/pyside6/libpyside/pysidesignal.cpp
index 07c5a3b09..47b92e4de 100644
--- a/sources/pyside6/libpyside/pysidesignal.cpp
+++ b/sources/pyside6/libpyside/pysidesignal.cpp
@@ -537,7 +537,9 @@ static PyObject *signalInstanceConnect(PyObject *self, PyObject *args, PyObject
         }
 
         // Adding references to pyArgs
+        qDebug() << __FUNCTION__ << "slot matching source=" << PySide::debugPyObject(source->d->source);
         PyList_Append(pyArgs, source->d->source);
+        qDebug() << __FUNCTION__ << "after append=" << PySide::debugPyObject(source->d->source);
 
         if (matchedSlot != nullptr) {
             // If a slot matching the same number of arguments was found,
@@ -557,12 +559,22 @@ static PyObject *signalInstanceConnect(PyObject *self, PyObject *args, PyObject
         PyList_Append(pyArgs, type);
 
     if (match) {
-        Shiboken::AutoDecRef tupleArgs(PyList_AsTuple(pyArgs));
+        PyObject *result{};
+        PyObject *sourceQo = source->d->source;
+        qDebug() << __FUNCTION__ << ">source=" << PySide::debugPyObject(sourceQo);
+        {
+        Shiboken::AutoDecRef tupleArgs(PyList_AsTuple(pyArgs));        
+        qDebug() << __FUNCTION__ << "slot=" << PySide::debugPyObject(slot)
+                 << "args=" << PySide::debugPyObject(tupleArgs);
         Shiboken::AutoDecRef pyMethod(PyObject_GetAttr(source->d->source,
                                                        PySide::PySideName::qtConnect()));
         if (pyMethod.isNull())  // PYSIDE-79: check if pyMethod exists.
             return PyErr_Format(PyExc_RuntimeError, "method 'connect' vanished!");
-        PyObject *result = PyObject_CallObject(pyMethod, tupleArgs);
+        qDebug() << __FUNCTION__ << ">call source refct=" << sourceQo->ob_refcnt;
+        result = PyObject_CallObject(pyMethod, tupleArgs);
+        }
+        pyArgs.reset(PyList_New(0));
+        qDebug() << __FUNCTION__ << "<call source refct=" << sourceQo->ob_refcnt;
         if (connection_Check(result))
             return result;
         Py_XDECREF(result);
@@ -1005,6 +1017,9 @@ static void sourceGone(void *data)
 
 static void instanceInitialize(PySideSignalInstance *self, PyObject *name, PySideSignal *signal, PyObject *source, int index)
 {
+    qDebug() << __FUNCTION__ << PySide::debugPyObject(name)
+             <<  PySide::debugPyObject(source) << index;
+
     self->d = new PySideSignalInstancePrivate;
     self->deleted = false;
     PySideSignalInstancePrivate *selfPvt = self->d;
@@ -1033,10 +1048,14 @@ static void instanceInitialize(PySideSignalInstance *self, PyObject *name, PySid
         selfPvt->next = PyObject_New(PySideSignalInstance, PySideSignalInstance_TypeF());
         instanceInitialize(selfPvt->next, name, signal, source, index);
     }
+    qDebug() << '<' <<__FUNCTION__ <<  PySide::debugPyObject(source);
+
 }
 
 PySideSignalInstance *initialize(PySideSignal *self, PyObject *name, PyObject *object)
 {
+    qDebug() << __FUNCTION__ <<  PySide::debugPyObject(name)
+             << PySide::debugPyObject(object);
     static PyTypeObject *pyQObjectType = Shiboken::Conversions::getPythonTypeObject("QObject*");
     assert(pyQObjectType);
 
@@ -1050,8 +1069,12 @@ PySideSignalInstance *initialize(PySideSignal *self, PyObject *name, PyObject *o
                                                   PySideSignalInstance_TypeF());
     instanceInitialize(instance, name, self, object, 0);
     auto *sbkObj = reinterpret_cast<SbkObject *>(object);
-    if (!Shiboken::Object::wasCreatedByPython(sbkObj))
+    if (!Shiboken::Object::wasCreatedByPython(sbkObj)) {
+        qDebug() << "PY79";
         Py_INCREF(object); // PYSIDE-79: this flag was crucial for a wrapper call.
+    }
+    qDebug() << '<' <<__FUNCTION__ <<  PySide::debugPyObject(object);
+
     return instance;
 }
 
diff --git a/sources/pyside6/libpyside/qobjectconnect.cpp b/sources/pyside6/libpyside/qobjectconnect.cpp
index 1d9453ab1..4ad929a08 100644
--- a/sources/pyside6/libpyside/qobjectconnect.cpp
+++ b/sources/pyside6/libpyside/qobjectconnect.cpp
@@ -182,6 +182,7 @@ QMetaObject::Connection qobjectConnect(QObject *source, const char *signal,
 {
     if (!signal || !slot || !PySide::Signal::checkQtSignal(signal))
         return {};
+    qDebug() << __FUNCTION__ << source << signal << receiver << slot;
 
     if (!PySide::SignalManager::registerMetaMethod(source, signal + 1, QMetaMethod::Signal))
         return {};
@@ -196,6 +197,8 @@ QMetaObject::Connection qobjectConnect(QObject *source, QMetaMethod signal,
                                        QObject *receiver, QMetaMethod slot,
                                        Qt::ConnectionType type)
 {
+    qDebug() << __FUNCTION__ << source << signal.methodSignature()
+             << receiver << slot.methodSignature();
     return qobjectConnect(source, signal.methodSignature().constData(),
                           receiver, slot.methodSignature().constData(), type);
 }
@@ -206,6 +209,8 @@ QMetaObject::Connection qobjectConnectCallback(QObject *source, const char *sign
     if (!signal || !PySide::Signal::checkQtSignal(signal))
         return {};
 
+    qDebug() << __FUNCTION__ << source << signal
+             << PySide::debugPyObject(callback);
     const int signalIndex =
         PySide::SignalManager::registerMetaMethodGetIndex(source, signal + 1,
                                                           QMetaMethod::Signal);
diff --git a/sources/pyside6/libpyside/signalmanager.cpp b/sources/pyside6/libpyside/signalmanager.cpp
index 5b17be510..15eae581e 100644
--- a/sources/pyside6/libpyside/signalmanager.cpp
+++ b/sources/pyside6/libpyside/signalmanager.cpp
@@ -742,6 +742,7 @@ int SignalManager::registerMetaMethodGetIndex(QObject *source, const char *signa
     int methodIndex = metaObject->indexOfMethod(signature);
     // Create the dynamic signal is needed
     if (methodIndex == -1) {
+        qDebug() << __FUNCTION__ << "dyn signal" << source;
         SbkObject *self = Shiboken::BindingManager::instance().retrieveWrapper(source);
         if (!Shiboken::Object::hasCppWrapper(self)) {
             qWarning().noquote().nospace() << __FUNCTION__
