diff --git a/src/error.rs b/src/error.rs index 996c83e..8ae819d 100644 --- a/src/error.rs +++ b/src/error.rs @@ -61,22 +61,29 @@ impl Display for Error { write!(f, "{}: status code {}", response.get_url(), status)?; } Error::Transport(err) => { - if let Some(url) = &err.url { - write!(f, "{}: ", url)?; - } - write!(f, "{}", err.kind)?; - if let Some(message) = &err.message { - write!(f, ": {}", message)?; - } - if let Some(source) = &err.source { - write!(f, ": {}", source)?; - } + write!(f, "{}", err)?; } } Ok(()) } } +impl Display for Transport { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + if let Some(url) = &self.url { + write!(f, "{}: ", url)?; + } + write!(f, "{}", self.kind)?; + if let Some(message) = &self.message { + write!(f, ": {}", message)?; + } + if let Some(source) = &self.source { + write!(f, ": {}", source)?; + } + Ok(()) + } +} + impl error::Error for Error { fn source(&self) -> Option<&(dyn error::Error + 'static)> { match &self {