From 62fa2652132e29613f078698d0583a35f2e08a82 Mon Sep 17 00:00:00 2001 From: Damien Elmes Date: Mon, 6 Apr 2020 17:11:03 +1000 Subject: [PATCH] avoid warning on int sortBackwards from older Anki versions --- rslib/src/config.rs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/rslib/src/config.rs b/rslib/src/config.rs index 137ce7854..aede6bd7e 100644 --- a/rslib/src/config.rs +++ b/rslib/src/config.rs @@ -6,6 +6,7 @@ use crate::decks::DeckID; use crate::err::Result; use crate::timestamp::TimestampSecs; use serde::{de::DeserializeOwned, Serialize}; +use serde_aux::field_attributes::deserialize_bool_from_anything; use serde_derive::Deserialize; use serde_json::json; use slog::warn; @@ -52,6 +53,9 @@ impl From for &'static str { } } +#[derive(Deserialize, Default)] +struct BoolLike(#[serde(deserialize_with = "deserialize_bool_from_anything")] bool); + impl Collection { /// Get config item, returning None if missing/invalid. pub(crate) fn get_config_optional<'a, T, K>(&self, key: K) -> Option @@ -93,7 +97,8 @@ impl Collection { } pub(crate) fn get_browser_sort_reverse(&self) -> bool { - self.get_config_default(ConfigKey::BrowserSortReverse) + let b: BoolLike = self.get_config_default(ConfigKey::BrowserSortReverse); + b.0 } pub(crate) fn get_current_deck_id(&self) -> DeckID {