Message239773
The patch for issue3999 was rejected because Python internal state may be corrupted when the SIGSEGV signal is raised. This is not the case of this issue. gdbm fatal function is called when Python is in consistent state. So we free to use any Python C-API. But internal state of concrete GDBM_FILE may be corrupted, so we shouldn't use it after handling fatal error. This cause a leak, but I think that a leak with an exception is better than just a crash.
May be different type of exception should be raised. May be we need FatalError that inherits from BaseException.
Other external libraries used by the stdlib also can crash, and perhaps crashes can be converted to exceptions. This issue is only first in the series. |
|
Date |
User |
Action |
Args |
2015-04-01 08:39:57 | serhiy.storchaka | set | recipients:
+ serhiy.storchaka, vstinner, BreamoreBoy |
2015-04-01 08:39:57 | serhiy.storchaka | set | messageid: <1427877597.13.0.217128680776.issue22035@psf.upfronthosting.co.za> |
2015-04-01 08:39:57 | serhiy.storchaka | link | issue22035 messages |
2015-04-01 08:39:56 | serhiy.storchaka | create | |
|