fix: write job resets
This commit is contained in:
		
							parent
							
								
									c77fe6c01c
								
							
						
					
					
						commit
						e3c239f5ae
					
				| @ -933,14 +933,12 @@ impl<T: InvokeUiSession> Remote<T> { | |||||||
|                                 err = job.job_error(); |                                 err = job.job_error(); | ||||||
|                                 fs::remove_job(d.id, &mut self.write_jobs); |                                 fs::remove_job(d.id, &mut self.write_jobs); | ||||||
|                             } |                             } | ||||||
|                             if let Some(job) = fs::get_job(d.id, &mut self.read_jobs) { |  | ||||||
|                                 job.modify_time(); |  | ||||||
|                                 err = job.job_error(); |  | ||||||
|                                 fs::remove_job(d.id, &mut self.read_jobs); |  | ||||||
|                             } |  | ||||||
|                             self.handle_job_status(d.id, d.file_num, err); |                             self.handle_job_status(d.id, d.file_num, err); | ||||||
|                         } |                         } | ||||||
|                         Some(file_response::Union::Error(e)) => { |                         Some(file_response::Union::Error(e)) => { | ||||||
|  |                             if let Some(job) = fs::get_job(e.id, &mut self.write_jobs) { | ||||||
|  |                                 fs::remove_job(e.id, &mut self.write_jobs); | ||||||
|  |                             } | ||||||
|                             self.handle_job_status(e.id, e.file_num, Some(e.error)); |                             self.handle_job_status(e.id, e.file_num, Some(e.error)); | ||||||
|                         } |                         } | ||||||
|                         _ => {} |                         _ => {} | ||||||
|  | |||||||
| @ -598,8 +598,8 @@ async fn handle_fs(fs: ipc::FS, write_jobs: &mut Vec<fs::TransferJob>, tx: &Unbo | |||||||
|         } |         } | ||||||
|         ipc::FS::WriteError { id, file_num, err } => { |         ipc::FS::WriteError { id, file_num, err } => { | ||||||
|             if let Some(job) = fs::get_job(id, write_jobs) { |             if let Some(job) = fs::get_job(id, write_jobs) { | ||||||
|                 send_raw(fs::new_error(id, err, file_num), tx); |                 send_raw(fs::new_error(job.id(), err, file_num), tx); | ||||||
|                 fs::remove_job(id, write_jobs); |                 fs::remove_job(job.id(), write_jobs); | ||||||
|             } |             } | ||||||
|         } |         } | ||||||
|         ipc::FS::WriteBlock { |         ipc::FS::WriteBlock { | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user