From d02c560150c0e738ea4d873e0eee7cf577201a9f Mon Sep 17 00:00:00 2001 From: Michel Weststrate Date: Tue, 29 Jun 2021 08:02:53 -0700 Subject: [PATCH] Exporting a Flipper trace should not swallow errors Summary: Noticed that when creating a flipper trace file, the errors were only shown in the console, but the dialog would hide. Reviewed By: jknoxville, passy Differential Revision: D29327500 fbshipit-source-id: 0ec60be28b5e3041f7cacd48ac4bcf13753f7219 --- desktop/app/src/chrome/ShareSheetExportFile.tsx | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/desktop/app/src/chrome/ShareSheetExportFile.tsx b/desktop/app/src/chrome/ShareSheetExportFile.tsx index 5a1545728..9fa372100 100644 --- a/desktop/app/src/chrome/ShareSheetExportFile.tsx +++ b/desktop/app/src/chrome/ShareSheetExportFile.tsx @@ -131,7 +131,12 @@ export default class ShareSheetExportFile extends Component { requireInteraction: true, }); } - this.setState({fetchMetaDataErrors, result: {kind: 'success'}}); + this.setState({ + fetchMetaDataErrors, + result: fetchMetaDataErrors + ? {error: JSON.stringify(fetchMetaDataErrors) as any, kind: 'error'} + : {kind: 'success'}, + }); this.store.dispatch(unsetShare()); this.props.logger.trackTimeSince(mark, 'export:file-success'); } catch (err) { @@ -145,8 +150,9 @@ export default class ShareSheetExportFile extends Component { if (!this.state.runInBackground) { // Show the error in UI. this.setState({result}); + } else { + this.store.dispatch(unsetShare()); } - this.store.dispatch(unsetShare()); this.props.logger.trackTimeSince(mark, 'export:file-error', result); throw err; }