--- /dev/null
+diff --git a/external/squirrel/sqstdlib/sqstdstream.cpp b/external/squirrel/sqstdlib/sqstdstream.cpp
+index 1b7a08f..af866a8 100644
+--- a/external/squirrel/sqstdlib/sqstdstream.cpp
++++ b/external/squirrel/sqstdlib/sqstdstream.cpp
+@@ -258,7 +258,11 @@ void init_streamclass(HSQUIRRELVM v)
+ sq_pushstring(v,_SC("std_stream"),-1);\r
+ if(SQ_FAILED(sq_get(v,-2))) {\r
+ sq_pushstring(v,_SC("std_stream"),-1);\r
+- sq_newclass(v,SQFalse);\r
++ if(SQ_FAILED(sq_newclass(v,SQFalse)))\r
++ {\r
++ throw "Failed to create new std_stream class";\r
++ return;\r
++ }\r
+ sq_settypetag(v,-1,(SQUserPointer)SQSTD_STREAM_TYPE_TAG);\r
+ SQInteger i = 0;\r
+ while(_stream_methods[i].name != 0) {\r
+@@ -266,10 +270,16 @@ void init_streamclass(HSQUIRRELVM v)
+ sq_pushstring(v,f.name,-1);\r
+ sq_newclosure(v,f.f,0);\r
+ sq_setparamscheck(v,f.nparamscheck,f.typemask);\r
+- sq_newslot(v,-3,SQFalse);\r
++ if(SQ_FAILED(sq_newslot(v,-3,SQFalse))\r
++ {\r
++ throw "Failed to create new table slot for stream_method";\r
++ }\r
+ i++;\r
+ }\r
+- sq_newslot(v,-3,SQFalse);\r
++ if(SQ_FAILED(sq_newslot(v,-3,SQFalse))\r
++ {\r
++ throw "Failed to create new table slot for stream";\r
++ }\r
+ sq_pushroottable(v);\r
+ sq_pushstring(v,_SC("stream"),-1);\r
+ sq_pushstring(v,_SC("std_stream"),-1);\r
+@@ -306,7 +316,10 @@ SQRESULT declare_stream(HSQUIRRELVM v,const SQChar* name,SQUserPointer typetag,c
+ sq_newslot(v,-3,SQFalse);\r
+ i++;\r
+ }\r
+- sq_newslot(v,-3,SQFalse);\r
++ if(SQ_FAILED(sq_newslot(v,-3,SQFalse))\r
++ {\r
++ throw "Failed to create new table slot"\r
++ }\r
+ sq_pop(v,1);\r
+ \r
+ i = 0;\r
+@@ -317,7 +330,10 @@ SQRESULT declare_stream(HSQUIRRELVM v,const SQChar* name,SQUserPointer typetag,c
+ sq_newclosure(v,f.f,0);\r
+ sq_setparamscheck(v,f.nparamscheck,f.typemask);\r
+ sq_setnativeclosurename(v,-1,f.name);\r
+- sq_newslot(v,-3,SQFalse);\r
++ if(SQ_FAILED(sq_newslot(v,-3,SQFalse))\r
++ {\r
++ throw "Failed to create new table slot for global";\r
++ }\r
+ i++;\r
+ }\r
+ //register the class in the target table\r
+diff --git a/external/squirrel/sqstdlib/sqstdsystem.cpp b/external/squirrel/sqstdlib/sqstdsystem.cpp
+index 40f78d7..b5359b6 100644
+--- a/external/squirrel/sqstdlib/sqstdsystem.cpp
++++ b/external/squirrel/sqstdlib/sqstdsystem.cpp
+@@ -140,7 +140,10 @@ SQInteger sqstd_register_systemlib(HSQUIRRELVM v)
+ sq_newclosure(v,systemlib_funcs[i].f,0);\r
+ sq_setparamscheck(v,systemlib_funcs[i].nparamscheck,systemlib_funcs[i].typemask);\r
+ sq_setnativeclosurename(v,-1,systemlib_funcs[i].name);\r
+- sq_newslot(v,-3,SQFalse);\r
++ if(SQ_FAILED(sq_newslot(v,-3,SQFalse))\r
++ {\r
++ // Could not create table slot\r
++ }\r
+ i++;\r
+ }\r
+ return 1;\r