From f1e0f82df5348e244e8860245d9ac9a83fd5b79d Mon Sep 17 00:00:00 2001 From: Chip Senkbeil Date: Tue, 12 Oct 2021 19:56:05 -0500 Subject: [PATCH] Added missing error response support in SessionChannelExt --- distant-core/src/client/session/ext.rs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/distant-core/src/client/session/ext.rs b/distant-core/src/client/session/ext.rs index 482602e..39b4e21 100644 --- a/distant-core/src/client/session/ext.rs +++ b/distant-core/src/client/session/ext.rs @@ -251,6 +251,7 @@ impl SessionChannelExt for SessionChannel { RequestData::Exists { path: path.into() }, |data| match data { ResponseData::Exists(x) => Ok(x), + ResponseData::Error(x) => Err(SessionChannelExtError::Failure(x)), _ => Err(SessionChannelExtError::MismatchedResponse), } ) @@ -273,6 +274,7 @@ impl SessionChannelExt for SessionChannel { }, |data| match data { ResponseData::Metadata(x) => Ok(x), + ResponseData::Error(x) => Err(SessionChannelExtError::Failure(x)), _ => Err(SessionChannelExtError::MismatchedResponse), } ) @@ -299,6 +301,7 @@ impl SessionChannelExt for SessionChannel { }, |data| match data { ResponseData::DirEntries { entries, errors } => Ok((entries, errors)), + ResponseData::Error(x) => Err(SessionChannelExtError::Failure(x)), _ => Err(SessionChannelExtError::MismatchedResponse), } ) @@ -315,6 +318,7 @@ impl SessionChannelExt for SessionChannel { RequestData::FileRead { path: path.into() }, |data| match data { ResponseData::Blob { data } => Ok(data), + ResponseData::Error(x) => Err(SessionChannelExtError::Failure(x)), _ => Err(SessionChannelExtError::MismatchedResponse), } ) @@ -331,6 +335,7 @@ impl SessionChannelExt for SessionChannel { RequestData::FileReadText { path: path.into() }, |data| match data { ResponseData::Text { data } => Ok(data), + ResponseData::Error(x) => Err(SessionChannelExtError::Failure(x)), _ => Err(SessionChannelExtError::MismatchedResponse), } ) @@ -401,6 +406,7 @@ impl SessionChannelExt for SessionChannel { RequestData::SystemInfo {}, |data| match data { ResponseData::SystemInfo(x) => Ok(x), + ResponseData::Error(x) => Err(SessionChannelExtError::Failure(x)), _ => Err(SessionChannelExtError::MismatchedResponse), } )