2
0
Эх сурвалжийг харах

handle Python exceptions properly in get_context()

rdb 14 жил өмнө
parent
commit
3c65b5171b

+ 9 - 2
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();
 }