summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2020-03-31 15:11:54 +0200
committerChristian Grothoff <christian@grothoff.org>2020-03-31 15:11:54 +0200
commit73d107b53d5f3c1461a74f280a84a1ab80d14360 (patch)
tree65720a4ecf229e64da874517d7d930a4e54c17e5
parentf38a56d3ff706047b28c2986fc0941df55c80a44 (diff)
downloadexchange-73d107b53d5f3c1461a74f280a84a1ab80d14360.tar.gz
exchange-73d107b53d5f3c1461a74f280a84a1ab80d14360.tar.bz2
exchange-73d107b53d5f3c1461a74f280a84a1ab80d14360.zip
fix leakv0.7.0
-rw-r--r--src/exchange/taler-exchange-httpd.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/exchange/taler-exchange-httpd.c b/src/exchange/taler-exchange-httpd.c
index f5acd1cd..de251acb 100644
--- a/src/exchange/taler-exchange-httpd.c
+++ b/src/exchange/taler-exchange-httpd.c
@@ -339,9 +339,15 @@ proceed_with_handler (const struct TEH_RequestHandler *rh,
upload_data_size,
&root);
if (GNUNET_SYSERR == res)
+ {
+ GNUNET_assert (NULL == root);
return MHD_NO; /* bad upload, could not even generate error */
+ }
if ( (GNUNET_NO == res) || (NULL == root) )
+ {
+ GNUNET_assert (NULL == root);
return MHD_YES; /* so far incomplete upload or parser error */
+ }
}
{
@@ -381,6 +387,8 @@ proceed_with_handler (const struct TEH_RequestHandler *rh,
rh->url,
url);
GNUNET_break_op (0);
+ if (NULL != root)
+ json_decref (root);
return TALER_MHD_reply_with_error (connection,
MHD_HTTP_NOT_FOUND,
TALER_EC_WRONG_NUMBER_OF_SEGMENTS,