From 3c65b5171b1f1b6259c8a79c5847412cddeb036d Mon Sep 17 00:00:00 2001 From: rdb Date: Sat, 28 Jan 2012 09:55:06 +0000 Subject: [PATCH] handle Python exceptions properly in get_context() --- panda/src/rocket/rocketRegion_ext.I | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/panda/src/rocket/rocketRegion_ext.I b/panda/src/rocket/rocketRegion_ext.I index e0bee5d3ff..ba7ee131d9 100644 --- a/panda/src/rocket/rocketRegion_ext.I +++ b/panda/src/rocket/rocketRegion_ext.I @@ -31,7 +31,14 @@ //////////////////////////////////////////////////////////////////// PyObject* EXT_CONST_METHOD(RocketRegion, get_context) { - Rocket::Core::Context* context = _ext_this->get_context(); - python::object py_context = Rocket::Core::Python::Utilities::MakeObject(context); + python::object py_context; + + try { + Rocket::Core::Context* context = _ext_this->get_context(); + py_context = Rocket::Core::Python::Utilities::MakeObject(context); + } catch (const python::error_already_set& e) { + return NULL; + } + return py_context.ptr(); }