From 193a434717791af7a2904c92f83d83422390fae0 Mon Sep 17 00:00:00 2001 From: Emil Ernerfeldt Date: Fri, 19 Aug 2022 12:04:43 +0200 Subject: [PATCH] eframe persistence: persistence failure is now logged instead of a panic --- eframe/src/epi.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/eframe/src/epi.rs b/eframe/src/epi.rs index 950a94cb..7a66b037 100644 --- a/eframe/src/epi.rs +++ b/eframe/src/epi.rs @@ -780,7 +780,10 @@ pub fn get_value(storage: &dyn Storage, key: &st /// Serialize the given value as [RON](https://github.com/ron-rs/ron) and store with the given key. #[cfg(feature = "ron")] pub fn set_value(storage: &mut dyn Storage, key: &str, value: &T) { - storage.set_string(key, ron::ser::to_string(value).unwrap()); + match ron::ser::to_string(value) { + Ok(string) => storage.set_string(key, string), + Err(err) => tracing::error!("eframe failed to encode data using ron: {}", err), + } } /// [`Storage`] key used for app