fix: ensure event is emitted before task promise rejection
[poolifier.git] / src / pools / abstract-pool.ts
index 9af3d707c35088356aae00f6192c1a716e9a8bf9..058b43b8a37104b29d1d15978613c42735072547 100644 (file)
@@ -767,10 +767,10 @@ export abstract class AbstractPool<
         const promiseResponse = this.promiseResponseMap.get(message.id)
         if (promiseResponse != null) {
           if (message.taskError != null) {
-            promiseResponse.reject(message.taskError.message)
             if (this.emitter != null) {
               this.emitter.emit(PoolEvents.taskError, message.taskError)
             }
+            promiseResponse.reject(message.taskError.message)
           } else {
             promiseResponse.resolve(message.data as Response)
           }