src/ai/api/squirrel_export.awk
branchnoai
changeset 9680 5ed7bbfd51c7
parent 9679 788e083db48b
child 9681 3997f1ce203a
--- a/src/ai/api/squirrel_export.awk	Thu Jul 19 17:13:38 2007 +0000
+++ b/src/ai/api/squirrel_export.awk	Thu Jul 19 19:42:54 2007 +0000
@@ -21,7 +21,7 @@
 	print "	template <> "       name " &GetParam(ForceType<"       name " &>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(" name " *)instance; }"
 	print "	template <> const " name " *GetParam(ForceType<const " name " *>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return  (" name " *)instance; }"
 	print "	template <> const " name " &GetParam(ForceType<const " name " &>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(" name " *)instance; }"
-	print "	template <> int Return<" name " *>(HSQUIRRELVM vm, " name " *res) { res->AddRef(); Squirrel::CreateClassInstanceVM(vm, \"" name "\", res, NULL, DefSQDestructorCallback<" name ">); return 1; }"
+	print "	template <> int Return<" name " *>(HSQUIRRELVM vm, " name " *res) { if (res == NULL) { sq_pushnull(vm); return 1; } res->AddRef(); Squirrel::CreateClassInstanceVM(vm, \"" name "\", res, NULL, DefSQDestructorCallback<" name ">); return 1; }"
 }
 
 BEGIN {