fix: add addition check if the provided code is valid gRPC code

This commit is contained in:
Algin Maduro 2020-09-01 13:28:23 +02:00
parent 5e42be1b34
commit aaee068a69
1 changed files with 14 additions and 5 deletions

View File

@ -739,15 +739,24 @@ export class Http2ServerCallStream<
} else {
this.messagesToPush.push(deserialized);
}
} catch (err) {
} catch (error) {
// Ignore any remaining messages when errors occur.
this.bufferedMessages.length = 0;
if(!err.code){
err.code = Status.INTERNAL;
if (
!(
'code' in error &&
typeof error.code === 'number' &&
Number.isInteger(error.code) &&
error.code >= Status.OK &&
error.code <= Status.UNAUTHENTICATED
)
) {
// The error code is not a valid gRPC code so its being overwritten.
error.code = Status.INTERNAL;
}
readable.emit('error', err);
readable.emit('error', error);
}
this.isPushPending = false;