[PD-cvs] externals/clr clr.cpp,1.2,1.3
Thomas Grill
xovo at users.sourceforge.net
Sat Jan 28 11:31:24 CET 2006
Update of /cvsroot/pure-data/externals/clr
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20054
Modified Files:
clr.cpp
Log Message:
try to catch eventual mono crashes
Index: clr.cpp
===================================================================
RCS file: /cvsroot/pure-data/externals/clr/clr.cpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** clr.cpp 28 Jan 2006 10:24:28 -0000 1.2
--- clr.cpp 28 Jan 2006 10:31:22 -0000 1.3
***************
*** 1041,1045 ****
if((clr_class->method_symbol = mono_method_desc_search_in_class(clr_desc_symbol,clr_class->mono_class)) != NULL)
class_addsymbol(clr_class->pd_class,clr_method_symbol);
- // if((clr_class->method_pointer = mono_class_get_method_from_name(clr_class->mono_class,"MethodPointer",1)) != NULL)
if((clr_class->method_pointer = mono_method_desc_search_in_class(clr_desc_pointer,clr_class->mono_class)) != NULL)
class_addpointer(clr_class->pd_class,clr_method_pointer);
--- 1041,1044 ----
***************
*** 1084,1101 ****
mono_set_dirs(tlib,tconf);
#endif
!
! monodomain = mono_jit_init("PureData");
if(monodomain) {
- /*
// add mono to C hooks
- mono_add_internal_call ("PureData.pd::RegisterSelector", registerMonoMethod);
- mono_add_internal_call ("PureData.pd::ToOutlet", out2outlet);
- mono_add_internal_call ("PureData.pd::PostMessage", post2pd);
- mono_add_internal_call ("PureData.pd::ErrorMessage", error2pd);
- mono_add_internal_call ("PureData.pd::CreateOutlet", createOutlet);
- mono_add_internal_call ("PureData.pd::CreateInlet", createInlet);
- */
- // mono_add_internal_call ("PureData.Core::AddMethod", PD_AddMethod);
-
mono_add_internal_call("PureData.Core::Post",(const void *)PD_Post);
mono_add_internal_call("PureData.Core::PostError",(const void *)PD_PostError);
--- 1083,1096 ----
mono_set_dirs(tlib,tconf);
#endif
!
! try {
! monodomain = mono_jit_init("PureData");
! }
! catch(...) {
! monodomain = NULL;
! }
!
if(monodomain) {
// add mono to C hooks
mono_add_internal_call("PureData.Core::Post",(const void *)PD_Post);
mono_add_internal_call("PureData.Core::PostError",(const void *)PD_PostError);
More information about the Pd-cvs
mailing list