Check if self.card.reps>0 before substracing 1 (#3966)

* Check if self.card.reps>0 before substracing 1

* Fix formatting

* Use a more rust-y way to avoid the Panic for underflow, especially wé're talking seed value

Co-Authored-By: jake <jake@sharnoth.com>

---------

Co-authored-by: jake <jake@sharnoth.com>
This commit is contained in:
Jonathan Schoreels 2025-04-30 13:53:36 +02:00 committed by GitHub
parent ad12046e87
commit 963fcf7c60
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -71,7 +71,7 @@ impl CardStateUpdater {
// Decrease reps by 1 to get correct seed for fuzz. // Decrease reps by 1 to get correct seed for fuzz.
// If the fuzz calculation changes, this will break. // If the fuzz calculation changes, this will break.
let last_ivl_with_fuzz = self.learning_ivl_with_fuzz( let last_ivl_with_fuzz = self.learning_ivl_with_fuzz(
get_fuzz_seed_for_id_and_reps(self.card.id, self.card.reps - 1), get_fuzz_seed_for_id_and_reps(self.card.id, self.card.reps.wrapping_sub(1)),
last_ivl, last_ivl,
); );
let last_answered_time = due as i64 - last_ivl_with_fuzz as i64; let last_answered_time = due as i64 - last_ivl_with_fuzz as i64;