@@ -78,22 +78,26 @@ const SerialBridge = {
7878 return await ipcRenderer . invoke ( 'serial' , 'removeFile' , file )
7979 } ,
8080 saveFileContent : async ( filename , content , dataConsumer ) => {
81- if ( ipcRenderer . listeners ( "serial-on-file-save-progress" ) . length > 0 ) {
82- ipcRenderer . removeAllListeners ( "serial-on-file-save-progress" )
83- }
81+ ipcRenderer . removeAllListeners ( "serial-on-file-save-progress" )
8482 ipcRenderer . on ( 'serial-on-file-save-progress' , ( event , progress ) => {
8583 dataConsumer ( progress )
8684 } )
87- return await ipcRenderer . invoke ( 'serial' , 'saveFileContent' , filename , content )
88- } ,
89- saveFileContentAtomic : async ( filename , content , dataConsumer ) => {
90- if ( ipcRenderer . listeners ( "serial-on-file-save-progress" ) . length > 0 ) {
85+ try {
86+ return await ipcRenderer . invoke ( 'serial' , 'saveFileContent' , filename , content )
87+ } finally {
9188 ipcRenderer . removeAllListeners ( "serial-on-file-save-progress" )
9289 }
90+ } ,
91+ saveFileContentAtomic : async ( filename , content , dataConsumer ) => {
92+ ipcRenderer . removeAllListeners ( "serial-on-file-save-progress" )
9393 ipcRenderer . on ( 'serial-on-file-save-progress' , ( event , progress ) => {
9494 dataConsumer ( progress )
9595 } )
96- return await ipcRenderer . invoke ( 'serial' , 'saveFileContentAtomic' , filename , content )
96+ try {
97+ return await ipcRenderer . invoke ( 'serial' , 'saveFileContentAtomic' , filename , content )
98+ } finally {
99+ ipcRenderer . removeAllListeners ( "serial-on-file-save-progress" )
100+ }
97101 } ,
98102 uploadFile : async ( src , dest , dataConsumer ) => {
99103 if ( ipcRenderer . listeners ( "serial-on-upload-progress" ) . length > 0 ) {
0 commit comments