From 68ce5c2e96bff7e463293c9b69e272e2aaaabee3 Mon Sep 17 00:00:00 2001 From: Artem Egorov Date: Mon, 23 Apr 2018 11:19:45 +0300 Subject: [PATCH] Handle uncaught promise rejection (#1253) --- package-mixins.js | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/package-mixins.js b/package-mixins.js index b576d09..fa07497 100644 --- a/package-mixins.js +++ b/package-mixins.js @@ -1,6 +1,7 @@ import { AcquisitionManager as Sdk } from "code-push/script/acquisition-sdk"; import { NativeEventEmitter } from "react-native"; import RestartManager from "./RestartManager"; +import log from "./logging"; // This function is used to augment remote and local // package objects with additional functionality/properties @@ -30,7 +31,14 @@ module.exports = (NativeCodePush) => { Object.keys(updatePackageCopy).forEach((key) => (typeof updatePackageCopy[key] === 'function') && delete updatePackageCopy[key]); const downloadedPackage = await NativeCodePush.downloadUpdate(updatePackageCopy, !!downloadProgressCallback); - reportStatusDownload && reportStatusDownload(this); + + if (reportStatusDownload) { + reportStatusDownload(this) + .catch((err) => { + log(`Report download status failed: ${err}`); + }); + } + return { ...downloadedPackage, ...local }; } finally { downloadProgressSubscription && downloadProgressSubscription.remove();