|
|
@ -134,7 +134,7 @@ ScriptEventAdminPort::~ScriptEventAdminPort()
|
|
|
|
|
|
|
|
|
|
|
|
SQInteger ScriptEventAdminPort::GetObject(HSQUIRRELVM vm)
|
|
|
|
SQInteger ScriptEventAdminPort::GetObject(HSQUIRRELVM vm)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
char *p = this->json;
|
|
|
|
const char *p = this->json;
|
|
|
|
|
|
|
|
|
|
|
|
if (this->ReadTable(vm, p) == nullptr) {
|
|
|
|
if (this->ReadTable(vm, p) == nullptr) {
|
|
|
|
sq_pushnull(vm);
|
|
|
|
sq_pushnull(vm);
|
|
|
@ -144,9 +144,9 @@ SQInteger ScriptEventAdminPort::GetObject(HSQUIRRELVM vm)
|
|
|
|
return 1;
|
|
|
|
return 1;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
char *ScriptEventAdminPort::ReadString(HSQUIRRELVM vm, char *p)
|
|
|
|
const char *ScriptEventAdminPort::ReadString(HSQUIRRELVM vm, const char *p)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
char *value = p;
|
|
|
|
const char *value = p;
|
|
|
|
|
|
|
|
|
|
|
|
bool escape = false;
|
|
|
|
bool escape = false;
|
|
|
|
for (;;) {
|
|
|
|
for (;;) {
|
|
|
@ -168,14 +168,13 @@ char *ScriptEventAdminPort::ReadString(HSQUIRRELVM vm, char *p)
|
|
|
|
p++;
|
|
|
|
p++;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
*p = '\0';
|
|
|
|
sq_pushstring(vm, value, p - value);
|
|
|
|
sq_pushstring(vm, value, -1);
|
|
|
|
p++; // Step past the end-of-string marker (")
|
|
|
|
*p++ = '"';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return p;
|
|
|
|
return p;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
char *ScriptEventAdminPort::ReadTable(HSQUIRRELVM vm, char *p)
|
|
|
|
const char *ScriptEventAdminPort::ReadTable(HSQUIRRELVM vm, const char *p)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
sq_newtable(vm);
|
|
|
|
sq_newtable(vm);
|
|
|
|
|
|
|
|
|
|
|
@ -218,7 +217,7 @@ char *ScriptEventAdminPort::ReadTable(HSQUIRRELVM vm, char *p)
|
|
|
|
return p;
|
|
|
|
return p;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
char *ScriptEventAdminPort::ReadValue(HSQUIRRELVM vm, char *p)
|
|
|
|
const char *ScriptEventAdminPort::ReadValue(HSQUIRRELVM vm, const char *p)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
SKIP_EMPTY(p);
|
|
|
|
SKIP_EMPTY(p);
|
|
|
|
|
|
|
|
|
|
|
@ -257,7 +256,7 @@ char *ScriptEventAdminPort::ReadValue(HSQUIRRELVM vm, char *p)
|
|
|
|
sq_newarray(vm, 0);
|
|
|
|
sq_newarray(vm, 0);
|
|
|
|
|
|
|
|
|
|
|
|
/* Empty array? */
|
|
|
|
/* Empty array? */
|
|
|
|
char *p2 = p + 1;
|
|
|
|
const char *p2 = p + 1;
|
|
|
|
SKIP_EMPTY(p2);
|
|
|
|
SKIP_EMPTY(p2);
|
|
|
|
if (*p2 == ']') {
|
|
|
|
if (*p2 == ']') {
|
|
|
|
p = p2 + 1;
|
|
|
|
p = p2 + 1;
|
|
|
|