diff options
author | Benoit Foucher <benoit@zeroc.com> | 2018-11-20 13:57:25 +0100 |
---|---|---|
committer | Benoit Foucher <benoit@zeroc.com> | 2018-11-20 13:57:25 +0100 |
commit | 738347ababa8d1198f380e8022558cca2bcb7023 (patch) | |
tree | e3e4f7487cb8154cf11e953f2def507e76f02c07 /python/modules/IcePy | |
parent | Fixed Android compile/target SDK versions to use 26 (diff) | |
download | ice-738347ababa8d1198f380e8022558cca2bcb7023.tar.bz2 ice-738347ababa8d1198f380e8022558cca2bcb7023.tar.xz ice-738347ababa8d1198f380e8022558cca2bcb7023.zip |
Fixed Python segfault that could occur because of KeyboardInterrupt, fixes #107
Diffstat (limited to 'python/modules/IcePy')
-rw-r--r-- | python/modules/IcePy/Types.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/python/modules/IcePy/Types.cpp b/python/modules/IcePy/Types.cpp index c1b8c5e5bea..209b7dd1101 100644 --- a/python/modules/IcePy/Types.cpp +++ b/python/modules/IcePy/Types.cpp @@ -4170,6 +4170,11 @@ PyObject* IcePy::ExceptionInfo::unmarshal(Ice::InputStream* is) { PyObjectHandle p = createExceptionInstance(pythonType); + if(!p.get()) + { + assert(PyErr_Occurred()); + throw AbortMarshaling(); + } ExceptionInfoPtr info = this; while(info) |