diff options
author | Christian Grothoff <christian@grothoff.org> | 2020-09-06 00:19:36 +0200 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2020-09-06 00:19:36 +0200 |
commit | fed87b96dd9241e76f1a62a512f5a5fe3162aa8b (patch) | |
tree | e369c9a2399f0d0d19e447106bfe76279bfd9963 /src | |
parent | 6ac300125f397470cac808e190eb02270b9a01bb (diff) | |
download | merchant-fed87b96dd9241e76f1a62a512f5a5fe3162aa8b.tar.gz merchant-fed87b96dd9241e76f1a62a512f5a5fe3162aa8b.tar.bz2 merchant-fed87b96dd9241e76f1a62a512f5a5fe3162aa8b.zip |
try to debug crash in merchant backend on GET for refund
Diffstat (limited to 'src')
-rw-r--r-- | src/backend/taler-merchant-httpd_get-orders-ID.c | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/src/backend/taler-merchant-httpd_get-orders-ID.c b/src/backend/taler-merchant-httpd_get-orders-ID.c index f55e4038..71265bb1 100644 --- a/src/backend/taler-merchant-httpd_get-orders-ID.c +++ b/src/backend/taler-merchant-httpd_get-orders-ID.c @@ -231,7 +231,6 @@ make_taler_refund_uri (struct MHD_Connection *con, "X-Forwarded-Prefix"); if (NULL != forwarded_host) host = forwarded_host; - if (NULL == host) { GNUNET_break (0); @@ -472,8 +471,11 @@ get_order_summary (struct GetOrderData *god) language_pattern, "summary")); if (NULL == ret) + { GNUNET_log (GNUNET_ERROR_TYPE_WARNING, "No order summary found!\n"); + ret = "<bug: no summary>"; + } return ret; } @@ -533,7 +535,7 @@ send_pay_request (struct GetOrderData *god, enum GNUNET_GenericReturnValue res; json_t *context; - context = json_pack ("{s:s, s:s, s:s, s:s?}", + context = json_pack ("{s:s, s:s, s:s, s:s}", "taler_pay_uri", taler_pay_uri, "order_status_url", @@ -1089,9 +1091,18 @@ TMH_get_orders_ID (const struct TMH_RequestHandler *rh, char *qr; char *uri; + GNUNET_assert (NULL != god->contract_terms); uri = make_taler_refund_uri (god->sc.con, order_id, hc->instance->settings.id); + if (NULL == uri) + { + GNUNET_break (0); + return TALER_MHD_reply_with_error (god->sc.con, + MHD_HTTP_INTERNAL_SERVER_ERROR, + TALER_EC_ALLOCATION_FAILURE, + "refund URI"); + } qr = TMH_create_qrcode (uri); if (NULL == qr) { @@ -1105,7 +1116,7 @@ TMH_get_orders_ID (const struct TMH_RequestHandler *rh, { json_t *context; - context = json_pack ("{s:s?, s:s, s:s, s:s}" + context = json_pack ("{s:s, s:s, s:s, s:s}" "order_summary", get_order_summary (god), "refund_amount", @@ -1129,7 +1140,7 @@ TMH_get_orders_ID (const struct TMH_RequestHandler *rh, { json_t *context; - context = json_pack ("{s:O, s:s?, s:s}", + context = json_pack ("{s:O, s:s, s:s}", "contract_terms", god->contract_terms, "order_summary", |