From: Francesco Ceruti Date: Sat, 4 May 2024 20:16:16 +0000 (+0200) Subject: alsaseq: fix seg. fault when accessing `ConstantObject` extra X-Git-Tag: v1.2.12~4 X-Git-Url: https://git.alsa-project.org/?a=commitdiff_plain;h=cb75f5cdba0a29bdfa43eb56285da4917d2941a9;p=alsa-python.git alsaseq: fix seg. fault when accessing `ConstantObject` extra Closes: https://github.com/alsa-project/alsa-python/pull/10 Signed-off-by: Francesco Ceruti Signed-off-by: Jaroslav Kysela --- diff --git a/pyalsa/alsaseq.c b/pyalsa/alsaseq.c index b2959fb..98a5030 100644 --- a/pyalsa/alsaseq.c +++ b/pyalsa/alsaseq.c @@ -353,18 +353,11 @@ typedef struct { } ConstantObject; #if PY_MAJOR_VERSION < 3 -/* PyInt is fixed size in Python 2 */ # define CONST_VALUE(x) PyInt_AsLong((PyObject *)x) -# define CONST_EXTRA(x) (&(x->extra)) #else -/* PyLong is variable size in Python 3 */ # define CONST_VALUE(x) PyLong_AsLong((PyObject *)x) -# define CONST_EXTRA(x) \ - ((ConstantExtraFields *)( \ - ((intptr_t)(&x->extra)) \ - + abs(Py_SIZE(&x->base)) * Py_TYPE(x)->tp_itemsize \ - )) #endif +# define CONST_EXTRA(x) (&(x->extra)) /** alsaseq.Constant type (initialized later...) */ static PyTypeObject ConstantType;