File tree Expand file tree Collapse file tree
packages/electron-trpc/src/renderer Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ ---
2+ ' electron-trpc ' : patch
3+ ---
4+
5+ Fix issue when TRPC client tries to close a subscription.
Original file line number Diff line number Diff line change @@ -96,20 +96,13 @@ export function ipcLink<TRouter extends AnyRouter>(): TRPCLink<TRouter> {
9696 return observable ( ( observer ) => {
9797 op . input = runtime . transformer . serialize ( op . input ) ;
9898
99- let isDone = false ;
10099 const unsubscribe = client . request ( op , {
101100 error ( err ) {
102- isDone = true ;
103101 observer . error ( err as TRPCClientError < any > ) ;
104102 unsubscribe ( ) ;
105103 } ,
106104 complete ( ) {
107- if ( ! isDone ) {
108- isDone = true ;
109- observer . error ( TRPCClientError . from ( new Error ( 'Operation ended prematurely' ) ) ) ;
110- } else {
111- observer . complete ( ) ;
112- }
105+ observer . complete ( ) ;
113106 } ,
114107 next ( response ) {
115108 const transformed = transformResult ( response , runtime ) ;
@@ -122,15 +115,13 @@ export function ipcLink<TRouter extends AnyRouter>(): TRPCLink<TRouter> {
122115 observer . next ( { result : transformed . result } ) ;
123116
124117 if ( op . type !== 'subscription' ) {
125- isDone = true ;
126118 unsubscribe ( ) ;
127119 observer . complete ( ) ;
128120 }
129121 } ,
130122 } ) ;
131123
132124 return ( ) => {
133- isDone = true ;
134125 unsubscribe ( ) ;
135126 } ;
136127 } ) ;
You can’t perform that action at this time.
0 commit comments