exchange

Base system with REST service to issue digital coins, run by the payment service provider
Log | Files | Refs | Submodules | README | LICENSE

commit 7730a083494c0d49705f87b32fc85dfa6ed6809a
parent ffe1ec4cb9c9ad23ecba095acb4e38edb741b402
Author: Sree Harsha Totakura <sreeharsha@totakura.in>
Date:   Thu, 26 Mar 2015 19:39:16 +0100

util: avoid memcpy over overlapping memory

memcpy used to copy the currency string in TALER_amount_get_zero can copy from
overlapping memory regions.  This happens when the diff parameter to
TALER_amount_substract is same as a1 parameter.

Diffstat:
Msrc/util/amount.c | 2+-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/util/amount.c b/src/util/amount.c @@ -348,7 +348,7 @@ TALER_amount_subtract (struct TALER_Amount *diff, return GNUNET_SYSERR; } GNUNET_assert (GNUNET_OK == - TALER_amount_get_zero (a1->currency, + TALER_amount_get_zero (n1.currency, diff)); GNUNET_assert (n1.fraction >= n2.fraction); diff->fraction = n1.fraction - n2.fraction;