P
ptb
Hello all,
I decided to play around with the C-API and have gotten stuck. I went through the Shoddy example (https://docs.python.org/3/extending/newtypes.html#subclassing-other-types) in the docs and tried to extend it by adding a method which creates and returns a shoddy instance. I dug around to find ways to allocate and initialize my shoddy instance and that seems to work well. However, I get segfaults when I try to delete my instance. The code is inthe gist: https://gist.github.com/pbrady/f2daf50761e458bbe44a
The magic happens in the make_a_shoddy function.
Here's a sample session (Python 3.4.1)
tup build
shd allocated
list style allocation successful
Py_SIZE(list) : 5
Py_SIZE(shoddy) : 5
This happens even if I don't set the destructor. Any ideas on what I am doing wrong?
Thanks,
Peter.
I decided to play around with the C-API and have gotten stuck. I went through the Shoddy example (https://docs.python.org/3/extending/newtypes.html#subclassing-other-types) in the docs and tried to extend it by adding a method which creates and returns a shoddy instance. I dug around to find ways to allocate and initialize my shoddy instance and that seems to work well. However, I get segfaults when I try to delete my instance. The code is inthe gist: https://gist.github.com/pbrady/f2daf50761e458bbe44a
The magic happens in the make_a_shoddy function.
Here's a sample session (Python 3.4.1)
tup build
shd allocated
list style allocation successful
Py_SIZE(list) : 5
Py_SIZE(shoddy) : 5
Segmentation fault (core dumped)type(shd)shd[:] [1, 2, 3, 4, 5]
shd.increment() 1
shd.increment() 2
del shd
This happens even if I don't set the destructor. Any ideas on what I am doing wrong?
Thanks,
Peter.