summaryrefslogtreecommitdiff
path: root/src/gmrequest.c
diff options
context:
space:
mode:
authorJaakko Keränen <jaakko.keranen@iki.fi>2020-11-03 21:44:34 +0200
committerJaakko Keränen <jaakko.keranen@iki.fi>2020-11-03 21:44:34 +0200
commit5c0f9d0c8cd38b5534c920a61cbb4c99f789d31e (patch)
treef67afd48ea534782075e70bce24e9bd4b261f607 /src/gmrequest.c
parentcf67675efc8d9cd75c4c52f653d61472065f683b (diff)
GmResponse: Fixed parsing of the response
In some cases an empty <META> in the server response would cause GmResponse to treat the entire header as invalid. Also, TlsRequest was not handling closing of the TLS/SSL connection if the socket still remained open. This caused GmRequest to wait until the timeout before it realized the full response had been received. IssueID #22
Diffstat (limited to 'src/gmrequest.c')
-rw-r--r--src/gmrequest.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/gmrequest.c b/src/gmrequest.c
index bb6ac23e..f15d80f1 100644
--- a/src/gmrequest.c
+++ b/src/gmrequest.c
@@ -256,7 +256,7 @@ static void readIncoming_GmRequest_(iAnyObject *obj) {
256 notifyDone = iTrue; 256 notifyDone = iTrue;
257 } 257 }
258 const int code = toInt_String(&d->resp.meta); 258 const int code = toInt_String(&d->resp.meta);
259 if (code == 0 || cstr_String(&d->resp.meta)[2] != ' ') { 259 if (code == 0) {
260 clear_String(&d->resp.meta); 260 clear_String(&d->resp.meta);
261 d->resp.statusCode = invalidHeader_GmStatusCode; 261 d->resp.statusCode = invalidHeader_GmStatusCode;
262 d->state = finished_GmRequestState; 262 d->state = finished_GmRequestState;