summaryrefslogtreecommitdiff
path: root/src/auditor/taler-wire-auditor.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/auditor/taler-wire-auditor.c')
-rw-r--r--src/auditor/taler-wire-auditor.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/auditor/taler-wire-auditor.c b/src/auditor/taler-wire-auditor.c
index 9801a95d4..2d0138506 100644
--- a/src/auditor/taler-wire-auditor.c
+++ b/src/auditor/taler-wire-auditor.c
@@ -1362,6 +1362,7 @@ history_debit_cb (void *cls,
{
struct WireAccount *wa = cls;
struct ReserveOutInfo *roi;
+ size_t slen;
(void) json;
if (NULL == details)
@@ -1389,14 +1390,19 @@ history_debit_cb (void *cls,
TALER_B2S (&details->wtid));
/* Update offset */
wa->out_wire_off = row_off;
- roi = GNUNET_new (struct ReserveOutInfo);
+ slen = strlen (details->credit_account_url) + 1;
+ roi = GNUNET_malloc (sizeof (struct ReserveOutInfo)
+ + slen);
GNUNET_CRYPTO_hash (&details->wtid,
sizeof (details->wtid),
&roi->subject_hash);
roi->details.amount = details->amount;
roi->details.execution_date = details->execution_date;
roi->details.wtid = details->wtid;
- roi->details.credit_account_url = GNUNET_strdup (details->credit_account_url);
+ roi->details.credit_account_url = (const char *) &roi[1];
+ memcpy (&roi[1],
+ details->credit_account_url,
+ slen);
if (GNUNET_OK !=
GNUNET_CONTAINER_multihashmap_put (out_map,
&roi->subject_hash,