Skip to content

Commit 4bc8232

Browse files
committed
some updates based on pr feedback
1 parent 524f8c4 commit 4bc8232

File tree

1 file changed

+8
-4
lines changed

1 file changed

+8
-4
lines changed

integrationTests/utils/securityServices.ts

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -66,14 +66,15 @@ export async function startOcspResponder(port: number, certsPath: string): Promi
6666
});
6767
}, 2000);
6868

69-
proc.stdout?.on('data', (data) => {
69+
// stdio is piped, so stdout/stderr are always defined
70+
proc.stdout.on('data', (data) => {
7071
// Log OCSP responder output for debugging
7172
if (process.env.DEBUG_OCSP) {
7273
console.log('OCSP responder:', data.toString());
7374
}
7475
});
7576

76-
proc.stderr?.on('data', (data) => {
77+
proc.stderr.on('data', (data) => {
7778
// Log errors for debugging
7879
if (process.env.DEBUG_OCSP) {
7980
console.error('OCSP responder error:', data.toString());
@@ -87,7 +88,10 @@ export async function startOcspResponder(port: number, certsPath: string): Promi
8788
}
8889
});
8990

90-
proc.on('exit', (code) => {
91+
// Use 'close' instead of 'exit' to ensure all stdio streams are fully flushed
92+
// and closed before handling the error - this prevents race conditions where we
93+
// might reject before all error output has been captured
94+
proc.on('close', (code) => {
9195
if (timeout) {
9296
clearTimeout(timeout);
9397
reject(new Error(`OCSP responder exited with code ${code} before starting`));
@@ -109,7 +113,7 @@ export async function stopOcspResponder(ctx: OcspResponderContext): Promise<void
109113
resolve();
110114
}, 5000);
111115

112-
ctx.process.on('exit', () => {
116+
ctx.process.on('close', () => {
113117
clearTimeout(timeout);
114118
resolve();
115119
});

0 commit comments

Comments
 (0)