From 873d6d487b125a435a855a9ac722eb3d0b319eb8 Mon Sep 17 00:00:00 2001 From: Masahiko AMANO Date: Wed, 28 Dec 2022 18:02:33 +0300 Subject: [PATCH] perf(core): a little improvement in new kazari remove functions --- core/shoppyou.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/core/shoppyou.c b/core/shoppyou.c index c5ac453..b2b85f0 100644 --- a/core/shoppyou.c +++ b/core/shoppyou.c @@ -142,15 +142,19 @@ int kazari_rem_by_sasa(Shoppyou *shoppyou, uint64_t sasa_id) { if (sasa_id == HOLE_ID) { return 1; } + _Bool changed = 0; for (uint64_t i = 0; i < shoppyou->size; i++) { if (shoppyou->database[i].sasa_id == sasa_id) { shoppyou->database[i].sasa_id = HOLE_ID; shoppyou->hole_cnt++; shoppyou->holes = realloc(shoppyou->holes, shoppyou->hole_cnt * sizeof(Kazari *)); shoppyou->holes[shoppyou->hole_cnt - 1] = shoppyou->database + i; - shoppyou->modified_ts = time(NULL); + changed = 1; } } + if (changed) { + shoppyou->modified_ts = time(NULL); + } return 0; } @@ -158,14 +162,18 @@ int kazari_rem_by_tanzaku(Shoppyou *shoppyou, uint64_t tanzaku_id) { if (tanzaku_id == HOLE_ID) { return 1; } + _Bool changed = 0; for (uint64_t i = 0; i < shoppyou->size; i++) { if (shoppyou->database[i].tanzaku_id == tanzaku_id) { shoppyou->database[i].tanzaku_id = HOLE_ID; shoppyou->hole_cnt++; shoppyou->holes = realloc(shoppyou->holes, shoppyou->hole_cnt * sizeof(Kazari *)); shoppyou->holes[shoppyou->hole_cnt - 1] = shoppyou->database + i; - shoppyou->modified_ts = time(NULL); + changed = 1; } } + if (changed) { + shoppyou->modified_ts = time(NULL); + } return 0; }