Salome HOME
projects
/
modules
/
smesh.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
3b26854
)
PAL12755: EDF: SALOME frozen with Load Script and a Python Module. Additional fix.
author
jfa
<jfa@opencascade.com>
Tue, 15 Aug 2006 09:52:22 +0000
(09:52 +0000)
committer
jfa
<jfa@opencascade.com>
Tue, 15 Aug 2006 09:52:22 +0000
(09:52 +0000)
src/SMESHGUI/SMESHGUI_Swig.i
patch
|
blob
|
history
diff --git
a/src/SMESHGUI/SMESHGUI_Swig.i
b/src/SMESHGUI/SMESHGUI_Swig.i
index fe3925989c97f920c19856810022884a2262f7ab..0ba7ee7e452a28c884f21df92b7489982d629e02 100644
(file)
--- a/
src/SMESHGUI/SMESHGUI_Swig.i
+++ b/
src/SMESHGUI/SMESHGUI_Swig.i
@@
-17,7
+17,7
@@
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
//
//
//
//
//
@@
-32,9
+32,25
@@
/* Exception handler for all functions */
%exception {
/* Exception handler for all functions */
%exception {
- Py_BEGIN_ALLOW_THREADS
+ class PyAllowThreadsGuard {
+ public:
+ // Py_BEGIN_ALLOW_THREADS
+ PyAllowThreadsGuard() { _save = PyEval_SaveThread(); }
+ // Py_END_ALLOW_THREADS
+ ~PyAllowThreadsGuard() { PyEval_RestoreThread(_save); }
+ private:
+ PyThreadState *_save;
+ };
+
+ PyAllowThreadsGuard guard;
+
+ try {
$action
$action
- Py_END_ALLOW_THREADS
+ }
+ catch(...) {
+ PyErr_SetString(PyExc_RuntimeError,"Unknown exception caught");
+ return NULL;
+ }
}
%include "typemaps.i"
}
%include "typemaps.i"