Исправлен баг с неправильным поиском метода. Добавлен обработчик исключений

This commit is contained in:
Kernell 2015-12-03 16:46:43 +03:00
parent 2b20afcb59
commit 669f475d79

View File

@ -141,14 +141,21 @@ MonoObject* CMonoClass::New( void** args, int argc )
return nullptr; return nullptr;
} }
CMonoMethod* pMethod = this->GetMethod( ".ctor", argc ); MonoMethod* pMethod = this->GetMethodFromName( ".ctor", argc );
if( !pMethod ) if( !pMethod )
{ {
return nullptr; return nullptr;
} }
pMethod->Invoke( pObject, args, nullptr ); MonoObject* pException = nullptr;
mono_runtime_invoke( pMethod, pObject, args, &pException );
if( pException )
{
this->GetDomain()->HandleException( pException );
}
return pObject; return pObject;
} }