fix(core): Prevent NodeErrors from being wrapped multiple times (#8301)

This commit is contained in:
कारतोफ्फेलस्क्रिप्ट™
2024-01-16 16:18:34 +01:00
committed by GitHub
parent 64ceb16af6
commit b267bf07e3
2 changed files with 25 additions and 9 deletions

View File

@@ -35,16 +35,16 @@ const COMMON_ERRORS: IDataObject = {
* a value recursively inside an error object.
*/
export abstract class NodeError extends ExecutionBaseError {
node: INode;
constructor(
readonly node: INode,
error: Error | JsonObject,
) {
if (error instanceof NodeError) return error;
constructor(node: INode, error: Error | JsonObject) {
if (error instanceof Error) {
super(error.message, { cause: error });
} else {
super('', { errorResponse: error });
}
this.node = node;
const isError = error instanceof Error;
const message = isError ? error.message : '';
const options = isError ? { cause: error } : { errorResponse: error };
super(message, options);
}
/**