diff --git a/LEGO1/mxobjectfactory.cpp b/LEGO1/mxobjectfactory.cpp index 78615f55..bc8e4ece 100644 --- a/LEGO1/mxobjectfactory.cpp +++ b/LEGO1/mxobjectfactory.cpp @@ -29,17 +29,19 @@ MxObjectFactory::MxObjectFactory() MxCore *MxObjectFactory::Create(const char *p_name) { MxAtomId atom(p_name, LookupMode_Exact); + MxCore* object = NULL; - if (0) { -#define X(V) } else if (this->m_id##V == atom) { return new V; + if (0) {} +#define X(V) else if (this->m_id##V == atom) { object = new V; } FOR_MXOBJECTFACTORY_OBJECTS(X) #undef X - } else { - return NULL; - } + else {} + + return object; } -// OFFSET: LEGO1 0x100b1a30 STUB -void MxObjectFactory::Destroy(void *p_object) { - // FIXME +// OFFSET: LEGO1 0x100b1a30 +void MxObjectFactory::Destroy(void *p_object) +{ + delete (MxCore*)p_object; }