exchange

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

commit a033256e619797e5a94c9c807b8cf406e907f74b
parent 67f81b4a71e0f27f8f43038f05576ef37d60301d
Author: Christian Grothoff <christian@grothoff.org>
Date:   Sun, 31 May 2026 21:26:07 +0200

fix regression introduced when cleaning up libgnunetpq: NULL is no longer special-cased in PACK, so for arrays we MUST use some key now

Diffstat:
Msrc/lib/exchange_api_post-melt.c | 15++++++++++-----
1 file changed, 10 insertions(+), 5 deletions(-)

diff --git a/src/lib/exchange_api_post-melt.c b/src/lib/exchange_api_post-melt.c @@ -384,13 +384,13 @@ start_melt (struct TALER_EXCHANGE_PostMeltHandle *mh) { json_t *j_envs; json_t *j_tbs = GNUNET_JSON_PACK ( - TALER_JSON_pack_array_of_data_auto (NULL, + TALER_JSON_pack_array_of_data_auto ("_", mh->md.num_fresh_coins, mh->md.kappa_transfer_pubs[k]) ); GNUNET_assert (NULL != (j_envs = json_array ())); - GNUNET_assert (NULL !=j_tbs); + GNUNET_assert (NULL != j_tbs); for (size_t i = 0; i < mh->md.num_fresh_coins; i++) { @@ -400,12 +400,17 @@ start_melt (struct TALER_EXCHANGE_PostMeltHandle *mh) ); GNUNET_assert (NULL != j_coin); GNUNET_assert (0 == - json_array_append_new (j_envs, j_coin)); + json_array_append_new (j_envs, + j_coin)); } GNUNET_assert (0 == - json_array_append_new (j_coin_evs, j_envs)); + json_array_append_new (j_coin_evs, + j_envs)); GNUNET_assert (0 == - json_array_append_new (j_transfer_pubs, j_tbs)); + json_array_append (j_transfer_pubs, + json_object_get (j_tbs, + "_"))); + json_decref (j_tbs); } GNUNET_assert (0 == json_object_set_new (j_request_body,