X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-http;a=blobdiff_plain;f=http_request_object.c;h=37e2a58bd75c031f3b8a11828ca75ecf647b2eac;hp=7b1d82bec99ac92b1c4d3a909bea9d8f87a041af;hb=712103ef11a9dfcc2495ce43e4a731d9b59d3439;hpb=dd579c42c06ebfe26ea2ff8ee6106a22d27e3340 diff --git a/http_request_object.c b/http_request_object.c index 7b1d82b..37e2a58 100644 --- a/http_request_object.c +++ b/http_request_object.c @@ -501,13 +501,13 @@ STATUS _http_request_object_requesthandler(http_request_object *obj, zval *this_ if (status == SUCCESS) { zval *qdata = convert_to_type_ex(IS_STRING, GET_PROP(obj, queryData)); - if (Z_STRLEN_P(qdata) && (strlen(request_uri) < HTTP_URI_MAXLEN)) { + if (Z_STRLEN_P(qdata)) { if (!strchr(request_uri, '?')) { - strcat(request_uri, "?"); + strlcat(request_uri, "?", HTTP_URI_MAXLEN); } else { - strcat(request_uri, "&"); + strlcat(request_uri, "&", HTTP_URI_MAXLEN); } - strncat(request_uri, Z_STRVAL_P(qdata), HTTP_URI_MAXLEN - strlen(request_uri)); + strlcat(request_uri, Z_STRVAL_P(qdata), HTTP_URI_MAXLEN); } status = http_request_init(obj->ch, Z_LVAL_P(meth), request_uri, body, Z_ARRVAL_P(GET_PROP(obj, options)));