pxar_backup_stream.rs: limit lock scope to avoid blocking forever
This commit is contained in:
		@ -80,9 +80,11 @@ impl Stream for PxarBackupStream {
 | 
			
		||||
    type Error = Error;
 | 
			
		||||
 | 
			
		||||
    fn poll(&mut self) -> Poll<Option<Vec<u8>>, Error> {
 | 
			
		||||
        let error = self.error.lock().unwrap();
 | 
			
		||||
        if let Some(ref msg) = *error {
 | 
			
		||||
            return Err(format_err!("{}", msg));
 | 
			
		||||
        { // limit lock scope
 | 
			
		||||
            let error = self.error.lock().unwrap();
 | 
			
		||||
            if let Some(ref msg) = *error {
 | 
			
		||||
                return Err(format_err!("{}", msg));
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        self.stream.as_mut().unwrap().poll().map_err(Error::from)
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user