summaryrefslogtreecommitdiff
path: root/js/process.ts
diff options
context:
space:
mode:
authorJonathon Orsi <jonathon.orsi@gmail.com>2019-04-07 20:51:43 -0400
committerRyan Dahl <ry@tinyclouds.org>2019-04-07 20:51:43 -0400
commit3452a10840ef47bb5546969ebe776289c7b095f1 (patch)
tree165439d870c7fdc2b914d9e008162ea7c17b4cb2 /js/process.ts
parent86aee7f13751bd4707f6c2fe367be2359fde84b2 (diff)
use flatbuffer create functions to add fields (#2046)
Diffstat (limited to 'js/process.ts')
-rw-r--r--js/process.ts36
1 files changed, 12 insertions, 24 deletions
diff --git a/js/process.ts b/js/process.ts
index 7e31a1361..fc5e5f652 100644
--- a/js/process.ts
+++ b/js/process.ts
@@ -34,9 +34,7 @@ export interface RunOptions {
async function runStatus(rid: number): Promise<ProcessStatus> {
const builder = flatbuffers.createBuilder();
- msg.RunStatus.startRunStatus(builder);
- msg.RunStatus.addRid(builder, rid);
- const inner = msg.RunStatus.endRunStatus(builder);
+ const inner = msg.RunStatus.createRunStatus(builder, rid);
const baseRes = await dispatch.sendAsync(builder, msg.Any.RunStatus, inner);
assert(baseRes != null);
@@ -154,35 +152,25 @@ export function run(opt: RunOptions): Process {
builder,
opt.args.map(a => builder.createString(a))
);
- const cwdOffset = opt.cwd == null ? -1 : builder.createString(opt.cwd);
+ const cwdOffset = opt.cwd == null ? 0 : builder.createString(opt.cwd);
const kvOffset: flatbuffers.Offset[] = [];
if (opt.env) {
for (const [key, val] of Object.entries(opt.env)) {
const keyOffset = builder.createString(key);
const valOffset = builder.createString(String(val));
- msg.KeyValue.startKeyValue(builder);
- msg.KeyValue.addKey(builder, keyOffset);
- msg.KeyValue.addValue(builder, valOffset);
- kvOffset.push(msg.KeyValue.endKeyValue(builder));
+ kvOffset.push(msg.KeyValue.createKeyValue(builder, keyOffset, valOffset));
}
}
const envOffset = msg.Run.createEnvVector(builder, kvOffset);
- msg.Run.startRun(builder);
- msg.Run.addArgs(builder, argsOffset);
- if (opt.cwd != null) {
- msg.Run.addCwd(builder, cwdOffset);
- }
- msg.Run.addEnv(builder, envOffset);
- if (opt.stdin) {
- msg.Run.addStdin(builder, stdioMap(opt.stdin!));
- }
- if (opt.stdout) {
- msg.Run.addStdout(builder, stdioMap(opt.stdout!));
- }
- if (opt.stderr) {
- msg.Run.addStderr(builder, stdioMap(opt.stderr!));
- }
- const inner = msg.Run.endRun(builder);
+ const inner = msg.Run.createRun(
+ builder,
+ argsOffset,
+ cwdOffset,
+ envOffset,
+ opt.stdin ? stdioMap(opt.stdin) : stdioMap("inherit"),
+ opt.stdout ? stdioMap(opt.stdout) : stdioMap("inherit"),
+ opt.stderr ? stdioMap(opt.stderr) : stdioMap("inherit")
+ );
const baseRes = dispatch.sendSync(builder, msg.Any.Run, inner);
assert(baseRes != null);
assert(msg.Any.RunRes === baseRes!.innerType());