aboutsummaryrefslogtreecommitdiff
path: root/src/wire
diff options
context:
space:
mode:
Diffstat (limited to 'src/wire')
-rw-r--r--src/wire/plugin_wire_test.c29
1 files changed, 16 insertions, 13 deletions
diff --git a/src/wire/plugin_wire_test.c b/src/wire/plugin_wire_test.c
index 604a36423..0c14190e7 100644
--- a/src/wire/plugin_wire_test.c
+++ b/src/wire/plugin_wire_test.c
@@ -816,23 +816,26 @@ bhist_cb (void *cls,
struct TALER_WIRE_HistoryHandle *whh = cls;
uint64_t bserial_id = GNUNET_htonll (serial_id);
- if (MHD_HTTP_OK == http_status)
- whh->hres_cb (whh->hres_cb_cls,
- dir,
- &bserial_id,
- sizeof (bserial_id),
- details);
+ if (MHD_HTTP_OK == http_status)
+ {
+ if ( (NULL != whh->hres_cb) &&
+ (GNUNET_OK !=
+ whh->hres_cb (whh->hres_cb_cls,
+ dir,
+ &bserial_id,
+ sizeof (bserial_id),
+ details)) )
+ whh->hres_cb = NULL;
+ }
else
- whh->hres_cb (whh->hres_cb_cls,
- TALER_BANK_DIRECTION_NONE,
- NULL,
- 0,
- NULL);
- if (MHD_HTTP_OK != http_status)
{
+ (void) whh->hres_cb (whh->hres_cb_cls,
+ TALER_BANK_DIRECTION_NONE,
+ NULL,
+ 0,
+ NULL);
whh->hh = NULL;
GNUNET_free (whh);
- return;
}
}