remove duplicate find in ErrorBoundary

This commit is contained in:
AAGaming
2024-07-17 19:38:06 -04:00
parent 2000eaf399
commit 24c3d3c8f1

View File

@@ -1,4 +1,4 @@
import { Patch, callOriginal, findModuleExport, replacePatch } from '@decky/ui'; import { ErrorBoundary, Patch, callOriginal, findModuleExport, replacePatch } from '@decky/ui';
import DeckyErrorBoundary from './components/DeckyErrorBoundary'; import DeckyErrorBoundary from './components/DeckyErrorBoundary';
import Logger from './logger'; import Logger from './logger';
@@ -70,15 +70,12 @@ class ErrorBoundaryHook extends Logger {
return shouldReport ? callOriginal : true; return shouldReport ? callOriginal : true;
}); });
const ValveErrorBoundary = findModuleExport( if (!ErrorBoundary) {
(e) => e.InstallErrorReportingStore && e?.prototype?.Reset && e?.prototype?.componentDidCatch,
);
if (!ValveErrorBoundary) {
this.error('could not find ValveErrorBoundary'); this.error('could not find ValveErrorBoundary');
return; return;
} }
this.errorBoundaryPatch = replacePatch(ValveErrorBoundary.prototype, 'render', function (this: any) { this.errorBoundaryPatch = replacePatch(ErrorBoundary.prototype, 'render', function (this: any) {
if (this.state.error) { if (this.state.error) {
const store = Object.getPrototypeOf(this)?.constructor?.sm_ErrorReportingStore || errorReportingStore; const store = Object.getPrototypeOf(this)?.constructor?.sm_ErrorReportingStore || errorReportingStore;
return ( return (