aboutsummaryrefslogtreecommitdiff
path: root/src/bank-lib/fakebank_tbr_get_history.c
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2023-11-22 22:34:26 +0100
committerChristian Grothoff <christian@grothoff.org>2023-11-22 22:34:26 +0100
commite53e06bc753e444b7365cf97bcbe006a52d850b9 (patch)
tree26a0ef169a866558a775848582f3373d2e089422 /src/bank-lib/fakebank_tbr_get_history.c
parenta7f7875619a067c1faf5282eec1ca8b16e1d612e (diff)
downloadexchange-e53e06bc753e444b7365cf97bcbe006a52d850b9.tar.xz
avoid race on serial_counter by deferring access to serial_counter after the parsing function is done and we have the lock
Diffstat (limited to 'src/bank-lib/fakebank_tbr_get_history.c')
-rw-r--r--src/bank-lib/fakebank_tbr_get_history.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/bank-lib/fakebank_tbr_get_history.c b/src/bank-lib/fakebank_tbr_get_history.c
index 7e7f9dda2..e81e00894 100644
--- a/src/bank-lib/fakebank_tbr_get_history.c
+++ b/src/bank-lib/fakebank_tbr_get_history.c
@@ -84,6 +84,8 @@ TALER_FAKEBANK_tbr_get_history_incoming (
}
GNUNET_assert (0 ==
pthread_mutex_lock (&h->big_lock));
+ if (UINT64_MAX == hc->ha.start_idx)
+ hc->ha.start_idx = h->serial_counter;
hc->acc = TALER_FAKEBANK_lookup_account_ (h,
account,
NULL);