From 7730a083494c0d49705f87b32fc85dfa6ed6809a Mon Sep 17 00:00:00 2001 From: Sree Harsha Totakura Date: Thu, 26 Mar 2015 19:39:16 +0100 Subject: 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. --- src/util/amount.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/util/amount.c') diff --git a/src/util/amount.c b/src/util/amount.c index 5e7f69fd9..c13c9101e 100644 --- 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; -- cgit v1.2.3