Message253749
Before committing any solution we first should have understood the cause of the crash. The peculiarity of example ctypes_crash.py is that the argument of ctypes.c_char.from_buffer is a memoryview. With current code we have following chain (the list creates a reference loop with itself):
list->memoryview->ManagedBuffer->memoryview->ManagedBuffer->bytearray
Using PyMemoryView_FromObject or hypothetical PyMemoryView_FromObjectEx we could get shorter chain:
list->memoryview->ManagedBuffer->bytearray
May be the cause not in current hack, but in memoryview that can't survive with breaking long chain? Or may be we just are lucky in latter case?
I share Martin's doubts about writability in Eryksun’s patch. |
|
Date |
User |
Action |
Args |
2015-10-30 17:39:59 | serhiy.storchaka | set | recipients:
+ serhiy.storchaka, jnoller, r.david.murray, skrah, sbt, martin.panter, zach.ware, JakeMont |
2015-10-30 17:39:59 | serhiy.storchaka | set | messageid: <1446226799.25.0.257074326061.issue25498@psf.upfronthosting.co.za> |
2015-10-30 17:39:59 | serhiy.storchaka | link | issue25498 messages |
2015-10-30 17:39:58 | serhiy.storchaka | create | |
|