diff options
| author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2025-11-04 12:57:15 +0100 |
|---|---|---|
| committer | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2025-12-16 08:44:46 +0100 |
| commit | 25671b4cfcc6c1023aa9e43bc4cafb7ff88c4051 (patch) | |
| tree | ffd5bfb7dd675a7b2c6deabf8e62cce9a94ad43a /tools | |
| parent | b32a536adf4f20939243df29c1c2256d8d1a4fd5 (diff) | |
Previously, PySidePropertyPrivate was used as a base class for
QmlListPropertyPrivate. Whereas PySidePropertyPrivate kept track
of the fget()/fset() and other helper functions and provided
tp_traverse and tp_clear, QmlListPropertyPrivate only kept flat
pointers to its helper functions (at(), append(), ...). This can
cause issues if for example a lambda is passed as callable.
QmlListPropertyPrivate also does not use any of the fget()/fset()
members.
To address this, extract a new base class PySidePropertyBase class which has
only the relevant members for both, and move PySidePropertyPrivate
into the source file.
Add Py_TPFLAGS_HAVE_GC to QmlListPropertyPrivate and track its
members similar to PySidePropertyPrivate.
Task-number: PYSIDE-3227
Change-Id: I7a739aa7b6f2c2811bde5b99a397ac752b20b69c
Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
Diffstat (limited to 'tools')
0 files changed, 0 insertions, 0 deletions
