merchant

Merchant backend to process payments, run by merchants
Log | Files | Refs | Submodules | README | LICENSE

commit e9e686866592eed98f5068e5eefc83e844c53bf7
parent 2f4844d1e33399ee7d1ac642f0b0f66885c3cfb5
Author: Christian Grothoff <christian@grothoff.org>
Date:   Sun, 29 Oct 2023 23:55:50 +0100

-fix use-after-free

Diffstat:
Msrc/lib/merchant_api_reward_pickup.c | 4+++-
1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/lib/merchant_api_reward_pickup.c b/src/lib/merchant_api_reward_pickup.c @@ -199,6 +199,7 @@ pickup_done_cb (void *cls, &pcd->exchange_vals, &fc)) { + GNUNET_break_op (0); ok = GNUNET_SYSERR; break; } @@ -300,7 +301,8 @@ csr_cb (void *cls, { struct TALER_EXCHANGE_PrivateCoinDetails *pcd = &tp->pcds[pd->off]; - pcd->exchange_vals = csrr->details.ok.alg_values; + TALER_denom_ewv_deep_copy (&pcd->exchange_vals, + &csrr->details.ok.alg_values); } if (0 != tp->csr_active) return;