From 922835e9805dc6292e5c0e08ef991c63c4ef2fff Mon Sep 17 00:00:00 2001 From: Damien Elmes Date: Sun, 8 Jun 2025 15:27:50 +0700 Subject: [PATCH] More suggestions from user1823 --- rslib/src/scheduler/reviews.rs | 3 ++- rslib/src/scheduler/states/review.rs | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/rslib/src/scheduler/reviews.rs b/rslib/src/scheduler/reviews.rs index 944569bba..0a7f32032 100644 --- a/rslib/src/scheduler/reviews.rs +++ b/rslib/src/scheduler/reviews.rs @@ -34,7 +34,8 @@ impl Card { let new_due = (today + days_from_today) as i32; let fsrs_enabled = self.memory_state.is_some(); let new_interval = if fsrs_enabled { - self.interval.saturating_add_signed(new_due - self.due) + self.interval + .saturating_add_signed(new_due - self.original_or_current_due()) } else if force_reset || !matches!(self.ctype, CardType::Review | CardType::Relearn) { days_from_today.max(1) } else { diff --git a/rslib/src/scheduler/states/review.rs b/rslib/src/scheduler/states/review.rs index 7427b7c3d..853cdf0a6 100644 --- a/rslib/src/scheduler/states/review.rs +++ b/rslib/src/scheduler/states/review.rs @@ -252,7 +252,7 @@ impl ReviewState { /// done shortly before the due date. fn passing_early_review_intervals(self, ctx: &StateContext) -> (u32, u32, u32) { let scheduled = (self.scheduled_days as f32).max(1.0); - let elapsed = (self.scheduled_days as f32) + (self.days_late() as f32); + let elapsed = self.elapsed_days as f32; let hard_interval = { let factor = ctx.hard_multiplier;