1
0
mirror of https://github.com/Ylianst/MeshAgent synced 2025-12-13 06:43:42 +00:00

1.) Fixed base folder bug if single file is passed

2.) Updated db JavaScript object to support compressed records
This commit is contained in:
Bryan Roe
2020-06-24 00:44:49 -07:00
parent e3c20eb6c5
commit f97ebdbdd4
4 changed files with 15 additions and 4 deletions

File diff suppressed because one or more lines are too long

View File

@@ -72,9 +72,18 @@ duk_ret_t ILibDuktape_SimpleDataStore_Put(duk_context *ctx)
key = ILibScratchPad2;
}
duk_push_current_function(ctx); // [func]
if (Duktape_GetBooleanProperty(ctx, -1, "compressed", 0) == 0)
{
duk_push_int(ctx, ILibSimpleDataStore_PutEx(dataStore, key, (int)keyLen, value, (int)valueLen)); // [ds][ptr][retVal]
}
else
{
duk_push_int(ctx, ILibSimpleDataStore_PutCompressed(dataStore, key, (int)keyLen, value, (int)valueLen));
}
return 1;
}
duk_ret_t ILibDuktape_SimpleDataStore_GetRaw(duk_context *ctx)
{
char *cguid = NULL;
@@ -231,7 +240,8 @@ duk_ret_t ILibDuktape_SimpleDataStore_Create(duk_context *ctx)
if (rdonly == 0)
{
ILibDuktape_CreateInstanceMethod(ctx, "Delete", ILibDuktape_SimpleDataStore_Delete, 1);
ILibDuktape_CreateInstanceMethod(ctx, "Put", ILibDuktape_SimpleDataStore_Put, 2);
ILibDuktape_CreateInstanceMethodWithBooleanProperty(ctx, "compressed", 0, "Put", ILibDuktape_SimpleDataStore_Put, 2);
ILibDuktape_CreateInstanceMethodWithBooleanProperty(ctx, "compressed", 1, "PutCompressed", ILibDuktape_SimpleDataStore_Put, 2);
ILibDuktape_CreateInstanceMethod(ctx, "Compact", ILibDuktape_SimpleDataStore_Compact, 0);
}
ILibDuktape_CreateInstanceMethod(ctx, "Get", ILibDuktape_SimpleDataStore_Get, DUK_VARARGS);

View File

@@ -126,7 +126,7 @@ if (process.argv.length > 1)
{
var src = require('fs').readFileSync(process.argv[2] + '.js', 'rb');
var src2 = Buffer.concat([Buffer.alloc(4), src]);
db.Put('CoreModule', src2);
db.PutCompressed('CoreModule', src2);
console.log(process.argv[2] + ' imported');
}
process.exit();

View File

@@ -54,6 +54,7 @@ function getBaseFolder(val)
if (val.length == 1)
{
if (test[0].length == 1) { return (''); }
test[0].pop();
return (test.join(D) + D);
}