1
0
mirror of https://github.com/VCMP-SqMod/SqMod.git synced 2025-02-21 20:27:13 +01:00

Minor optimization when retrieving the last error.

This commit is contained in:
Sandu Liviu Catalin 2016-06-12 13:01:43 +03:00
parent 579bd4d76b
commit d96a6dff0b

View File

@ -465,15 +465,16 @@ inline string FormatTypeError(HSQUIRRELVM vm, SQInteger idx, const string& expec
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
inline string LastErrorString(HSQUIRRELVM vm) { inline string LastErrorString(HSQUIRRELVM vm) {
const SQChar* sqErr; const SQChar* sqErr;
SQInteger size;
sq_getlasterror(vm); sq_getlasterror(vm);
if (sq_gettype(vm, -1) == OT_NULL) { if (sq_gettype(vm, -1) == OT_NULL) {
sq_pop(vm, 1); sq_pop(vm, 1);
return string(); return string();
} }
sq_tostring(vm, -1); sq_tostring(vm, -1);
sq_getstring(vm, -1, &sqErr); sq_getstringandsize(vm, -1, &sqErr, &size);
sq_pop(vm, 2); sq_pop(vm, 2);
return string(sqErr); return string(sqErr, size);
} }
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////