diff options
Diffstat (limited to 'src/engine/shared')
| -rw-r--r-- | src/engine/shared/kernel.cpp | 8 | ||||
| -rw-r--r-- | src/engine/shared/storage.cpp | 2 |
2 files changed, 8 insertions, 2 deletions
diff --git a/src/engine/shared/kernel.cpp b/src/engine/shared/kernel.cpp index 9f6850ba..059a0e48 100644 --- a/src/engine/shared/kernel.cpp +++ b/src/engine/shared/kernel.cpp @@ -45,6 +45,12 @@ public: virtual bool RegisterInterfaceImpl(const char *pName, IInterface *pInterface) { // TODO: More error checks here + if(!pInterface) + { + dbg_msg("kernel", "ERROR: couldn't register interface %s. null pointer given", pName); + return false; + } + if(m_NumInterfaces == MAX_INTERFACES) { dbg_msg("kernel", "ERROR: couldn't register interface '%s'. maximum of interfaces reached", pName); @@ -53,7 +59,7 @@ public: if(FindInterfaceInfo(pName) != 0) { - dbg_msg("kernel", "ERROR: couldn't register interface '%s'. interface already exists"); + dbg_msg("kernel", "ERROR: couldn't register interface '%s'. interface already exists", pName); return false; } diff --git a/src/engine/shared/storage.cpp b/src/engine/shared/storage.cpp index 6f2399d7..e8b0f8bb 100644 --- a/src/engine/shared/storage.cpp +++ b/src/engine/shared/storage.cpp @@ -197,7 +197,7 @@ public: static IStorage *Create(const char *pApplicationName, int NumArgs, const char **ppArguments) { CStorage *p = new CStorage(); - if(p->Init(pApplicationName, NumArgs, ppArguments)) + if(p && p->Init(pApplicationName, NumArgs, ppArguments)) { delete p; p = 0; |