🐛 when logs were empty .back() would seg fault

This commit is contained in:
William Katz 2021-07-21 23:00:24 -07:00 committed by GitHub
parent 88ec95968c
commit 67183d88eb
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -198,7 +198,7 @@ BankResponse Bank::PruneUsers(time_t threshold_time, uint32_t threshold_bal) noe
if (users.erase_if(u.first, [threshold_time, threshold_bal, &deleted_count](User &u) -> bool if (users.erase_if(u.first, [threshold_time, threshold_bal, &deleted_count](User &u) -> bool
{ {
#if MAX_LOG_SIZE > 0 #if MAX_LOG_SIZE > 0
return (u.log.data.back().time < threshold_time && u.balance < threshold_bal); return ((u.log.data.size() ? (u.log.data.back().time < threshold_time) : true) && u.balance < threshold_bal);
#else #else
return (u.balance < threshold_bal); return (u.balance < threshold_bal);
#endif #endif