taler-mdb

GNU Taler Extensions and Integrations
Log | Files | Refs | Submodules | README | LICENSE

commit 7327096801588a0ed19b680ba1b3f0a0d6a6d42d
parent 5a2de7eecfd4609ddd2bae05b9d70401e3e649cc
Author: Christian Grothoff <christian@grothoff.org>
Date:   Mon, 11 Jul 2022 15:16:05 +0200

adaptations for latest merchant C API

Diffstat:
Msrc/main.c | 13+++++++------
1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/src/main.c b/src/main.c @@ -1468,15 +1468,14 @@ start_read_keyboard (void); * @brief Callback to process a GET /check-payment request * * @param cls closure - * @param hr HTTP response * @param osr order status response details (on success) */ static void check_payment_cb (void *cls, - const struct TALER_MERCHANT_HttpResponse *hr, const struct TALER_MERCHANT_OrderStatusResponse *osr) { struct PaymentActivity *pa = cls; + const struct TALER_MERCHANT_HttpResponse *hr = &osr->hr; char *uri; GNUNET_assert (payment_activity == pa); @@ -1497,7 +1496,8 @@ check_payment_cb (void *cls, return; } - if (TALER_MERCHANT_OSC_PAID == osr->status) + if ( (MHD_HTTP_OK != hr->http_status) && + (TALER_MERCHANT_OSC_PAID == osr->details.success.status) ) { mdb.cmd = &cmd_approve_vend; payment_activity->paid = true; @@ -1522,14 +1522,15 @@ check_payment_cb (void *cls, pa); } if ( (NULL == pa->taler_pay_uri) && - (TALER_MERCHANT_OSC_UNPAID == osr->status) ) + (MHD_HTTP_OK == hr->http_status) && + (TALER_MERCHANT_OSC_UNPAID == osr->details.success.status) ) { if (NULL == essid) - uri = GNUNET_strdup (osr->details.unpaid.taler_pay_uri); + uri = GNUNET_strdup (osr->details.success.details.unpaid.taler_pay_uri); else GNUNET_asprintf (&uri, "%s#%s", - osr->details.unpaid.taler_pay_uri, + osr->details.success.details.unpaid.taler_pay_uri, essid); GNUNET_log (GNUNET_ERROR_TYPE_INFO, "Trying to talk to wallet to give it pay URI `%s'\n",