diff --git a/rslib/src/scheduler/answering/mod.rs b/rslib/src/scheduler/answering/mod.rs index e7be9fa43..5be34c544 100644 --- a/rslib/src/scheduler/answering/mod.rs +++ b/rslib/src/scheduler/answering/mod.rs @@ -447,8 +447,10 @@ impl Collection { // Get deck-specific desired retention if available, otherwise use config // default - let desired_retention = if let Some(deck_dr) = deck.normal()?.desired_retention { - deck_dr + let desired_retention = if let Ok(normal_deck) = deck.normal() { + normal_deck + .desired_retention + .unwrap_or(config.inner.desired_retention) } else { config.inner.desired_retention }; diff --git a/rslib/src/scheduler/fsrs/memory_state.rs b/rslib/src/scheduler/fsrs/memory_state.rs index d5b2dbe2a..6428dffde 100644 --- a/rslib/src/scheduler/fsrs/memory_state.rs +++ b/rslib/src/scheduler/fsrs/memory_state.rs @@ -208,8 +208,10 @@ impl Collection { // Get deck-specific desired retention if available, otherwise use config // default - let desired_retention = if let Some(deck_dr) = deck.normal()?.desired_retention { - deck_dr + let desired_retention = if let Ok(normal_deck) = deck.normal() { + normal_deck + .desired_retention + .unwrap_or(config.inner.desired_retention) } else { config.inner.desired_retention };