[librsvg: 9/32] Rename LoadingError::Unknown to LoadingError::Other
- From: Federico Mena Quintero <federico src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [librsvg: 9/32] Rename LoadingError::Unknown to LoadingError::Other
- Date: Fri, 4 Dec 2020 21:11:30 +0000 (UTC)
commit a6bb6e55244e507b4eb0f6cb2a2add73e15425c4
Author: Federico Mena Quintero <federico gnome org>
Date: Wed Nov 25 12:46:20 2020 -0600
Rename LoadingError::Unknown to LoadingError::Other
And make it carry a string. This will be the catch-all for loading errors.
src/c_api/handle.rs | 4 ++--
src/document.rs | 10 +++++-----
src/error.rs | 6 +++---
3 files changed, 10 insertions(+), 10 deletions(-)
---
diff --git a/src/c_api/handle.rs b/src/c_api/handle.rs
index 808bdcaa..5af0d92a 100644
--- a/src/c_api/handle.rs
+++ b/src/c_api/handle.rs
@@ -802,7 +802,7 @@ impl CHandle {
"handle must not be already loaded in order to call \
rsvg_handle_read_stream_sync()",
);
- Err(LoadingError::Unknown)
+ Err(LoadingError::Other(String::from("API ordering")))
}
}
}
@@ -972,7 +972,7 @@ impl CHandle {
"handle must already be loaded in order to call \
rsvg_handle_set_stylesheet()",
);
- Err(LoadingError::Unknown)
+ Err(LoadingError::Other(String::from("API ordering")))
}
}
}
diff --git a/src/document.rs b/src/document.rs
index 082d46b4..55c8418f 100644
--- a/src/document.rs
+++ b/src/document.rs
@@ -229,7 +229,9 @@ fn load_image(
loader.write(&bytes)?;
loader.close()?;
- let pixbuf = loader.get_pixbuf().ok_or(LoadingError::Unknown)?;
+ let pixbuf = loader.get_pixbuf().ok_or_else(|| {
+ LoadingError::Other(format!("loading image: {}", human_readable_url(aurl)))
+ })?;
let bytes = if load_options.keep_image_data {
Some(bytes)
@@ -256,13 +258,11 @@ fn image_loading_error_from_cairo(status: cairo::Status, aurl: &AllowedUrl) -> L
let url = human_readable_url(aurl);
match status {
- cairo::Status::NoMemory => {
- LoadingError::OutOfMemory(format!("loading image: {}", url))
- }
+ cairo::Status::NoMemory => LoadingError::OutOfMemory(format!("loading image: {}", url)),
cairo::Status::InvalidSize => {
LoadingError::LimitExceeded(format!("image too big: {}", url))
}
- _ => LoadingError::Unknown,
+ _ => LoadingError::Other(format!("cairo error: {}", status)),
}
}
diff --git a/src/error.rs b/src/error.rs
index 977f48be..7d4da25d 100644
--- a/src/error.rs
+++ b/src/error.rs
@@ -351,8 +351,8 @@ pub enum LoadingError {
/// A particular implementation-defined limit was exceeded.
LimitExceeded(String),
- // FIXME: only used internally when loading pixbufs, and temporarily in c_api.
- Unknown,
+ /// Catch-all for loading errors.
+ Other(String),
}
impl error::Error for LoadingError {}
@@ -373,7 +373,7 @@ impl fmt::Display for LoadingError {
LoadingError::RootElementIsNotSvg => write!(f, "root element is not <svg>"),
LoadingError::Glib(ref e) => e.fmt(f),
LoadingError::LimitExceeded(ref s) => write!(f, "limit exceeded: {}", s),
- LoadingError::Unknown => write!(f, "unknown error"),
+ LoadingError::Other(ref s) => write!(f, "{}", s),
}
}
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]