summaryrefslogtreecommitdiff
path: root/runtime/js/40_process.js
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/js/40_process.js')
-rw-r--r--runtime/js/40_process.js10
1 files changed, 10 insertions, 0 deletions
diff --git a/runtime/js/40_process.js b/runtime/js/40_process.js
index b8e05ce5a..e628aeb4a 100644
--- a/runtime/js/40_process.js
+++ b/runtime/js/40_process.js
@@ -159,6 +159,7 @@ function spawnChildInner(opFn, command, apiName, {
stderr = "piped",
signal = undefined,
windowsRawArguments = false,
+ ipc = -1,
} = {}) {
const child = opFn({
cmd: pathFromURL(command),
@@ -172,6 +173,7 @@ function spawnChildInner(opFn, command, apiName, {
stdout,
stderr,
windowsRawArguments,
+ ipc,
}, apiName);
return new ChildProcess(illegalConstructorKey, {
...child,
@@ -203,6 +205,12 @@ class ChildProcess {
#waitPromise;
#waitComplete = false;
+ #pipeFd;
+ // internal, used by ext/node
+ get _pipeFd() {
+ return this.#pipeFd;
+ }
+
#pid;
get pid() {
return this.#pid;
@@ -239,6 +247,7 @@ class ChildProcess {
stdinRid,
stdoutRid,
stderrRid,
+ pipeFd, // internal
} = null) {
if (key !== illegalConstructorKey) {
throw new TypeError("Illegal constructor.");
@@ -246,6 +255,7 @@ class ChildProcess {
this.#rid = rid;
this.#pid = pid;
+ this.#pipeFd = pipeFd;
if (stdinRid !== null) {
this.#stdin = writableStreamForRid(stdinRid);