Fix gray screen crash that might happen when gathering usage stats
Reviewed By: jknoxville Differential Revision: D26814271 fbshipit-source-id: bd857a42ae6b2528e42c96d0865ae2c532ea345f
This commit is contained in:
committed by
Facebook GitHub Bot
parent
05a7451173
commit
67e87c2fa5
@@ -11,7 +11,7 @@ import {ipcRenderer, remote} from 'electron';
|
|||||||
import {performance} from 'perf_hooks';
|
import {performance} from 'perf_hooks';
|
||||||
import {EventEmitter} from 'events';
|
import {EventEmitter} from 'events';
|
||||||
|
|
||||||
import {Store} from '../reducers/index';
|
import {State, Store} from '../reducers/index';
|
||||||
import {Logger} from '../fb-interfaces/Logger';
|
import {Logger} from '../fb-interfaces/Logger';
|
||||||
import Client from '../Client';
|
import Client from '../Client';
|
||||||
import {
|
import {
|
||||||
@@ -121,8 +121,19 @@ export default (store: Store, logger: Logger) => {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
ipcRenderer.on('trackUsage', (_e, ...args: any[]) => {
|
ipcRenderer.on('trackUsage', (event, ...args: any[]) => {
|
||||||
const state = store.getState();
|
let state: State;
|
||||||
|
try {
|
||||||
|
state = store.getState();
|
||||||
|
} catch (e) {
|
||||||
|
// if trackUsage is called (indirectly) through a reducer, this will utterly die Flipper. Let's prevent that and log an error instead
|
||||||
|
console.error(
|
||||||
|
'trackUsage triggered indirectly as side effect of a reducer. Event: ',
|
||||||
|
event.type,
|
||||||
|
event,
|
||||||
|
);
|
||||||
|
return;
|
||||||
|
}
|
||||||
const {
|
const {
|
||||||
selectedDevice,
|
selectedDevice,
|
||||||
selectedPlugin,
|
selectedPlugin,
|
||||||
|
|||||||
Reference in New Issue
Block a user