commit 56c0bfd76ad72e8c78181ffa93b5089b418e760a
parent 9d9a2fb36d866e7b028fe3b70370fcf8a7582c78
Author: Sebastian <sebasjm@gmail.com>
Date: Fri, 28 Jun 2024 11:29:44 -0300
client state may be NULL if no login was perform first
Diffstat:
1 file changed, 17 insertions(+), 7 deletions(-)
diff --git a/src/challenger/challenger-httpd_solve.c b/src/challenger/challenger-httpd_solve.c
@@ -407,13 +407,23 @@ CH_handler_solve (struct CH_HandlerContext *hc,
client_scope,
address,
client_redirect_uri);
- url_encoded = TALER_urlencode (client_state);
- GNUNET_asprintf (&url,
- "%s?code=%s&state=%s",
- client_redirect_uri,
- code,
- url_encoded);
- GNUNET_free (url_encoded);
+ if (NULL == client_state)
+ {
+ GNUNET_asprintf (&url,
+ "%s?code=%s",
+ client_redirect_uri,
+ code);
+ }
+ else
+ {
+ url_encoded = TALER_urlencode (client_state);
+ GNUNET_asprintf (&url,
+ "%s?code=%s&state=%s",
+ client_redirect_uri,
+ code,
+ url_encoded);
+ GNUNET_free (url_encoded);
+ }
GNUNET_free (code);
}
json_decref (address);