do not overwrite old backup until new backup is done
This commit is contained in:
		@@ -1095,7 +1095,10 @@ class NMRMainWindow(QtWidgets.QMainWindow, Ui_BaseWindow):
 | 
			
		||||
    def _autosave(self):
 | 
			
		||||
        # TODO better separate thread may it takes some time to save
 | 
			
		||||
        self.status.setText('Autosave...')
 | 
			
		||||
        NMRWriter(self.management.graphs, self.management.data).export(self.__backup_path)
 | 
			
		||||
        success = NMRWriter(self.management.graphs, self.management.data).export(self.__backup_path.with_suffix('.nmr.0'))
 | 
			
		||||
        if success:
 | 
			
		||||
            self.__backup_path.with_suffix('.nmr.0').rename(self.__backup_path)
 | 
			
		||||
 | 
			
		||||
        self.status.setText('')
 | 
			
		||||
 | 
			
		||||
    def check_for_backup(self):
 | 
			
		||||
 
 | 
			
		||||
@@ -22,6 +22,11 @@ class NMRWriter:
 | 
			
		||||
        if isinstance(fname, str):
 | 
			
		||||
            fname = Path(fname)
 | 
			
		||||
 | 
			
		||||
        with fname.open(mode='wb') as fh:
 | 
			
		||||
            fh.write(pack('16s', b'NMREVAL' + bytes(__version__, 'utf8')))
 | 
			
		||||
            dump(self._states, fh)
 | 
			
		||||
        try:
 | 
			
		||||
            with fname.open(mode='wb') as fh:
 | 
			
		||||
                fh.write(pack('16s', b'NMREVAL' + bytes(__version__, 'utf8')))
 | 
			
		||||
                dump(self._states, fh)
 | 
			
		||||
            return True
 | 
			
		||||
        except Exception as e:
 | 
			
		||||
            print(f'Saving {fname} failed with exception {e.args}')
 | 
			
		||||
            return False
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user