@@ -860,6 +860,7 @@ std::shared_ptr<HttpResponse> CurlHttpClient::MakeRequest(const std::shared_ptr<
860860 OverrideOptionsOnConnectionHandle (connectionHandle);
861861 Aws::Utils::DateTime startTransmissionTime = Aws::Utils::DateTime::Now ();
862862 CURLcode curlResponseCode = curl_easy_perform (connectionHandle);
863+ curl_easy_setopt (connectionHandle, CURLOPT_ERRORBUFFER, nullptr );
863864 bool shouldContinueRequest = ContinueRequest (*request);
864865 if (curlResponseCode != CURLE_OK && shouldContinueRequest)
865866 {
@@ -968,14 +969,12 @@ std::shared_ptr<HttpResponse> CurlHttpClient::MakeRequest(const std::shared_ptr<
968969 {
969970 request->SetResolvedRemoteHost (ip);
970971 }
971- if (curlResponseCode != CURLE_OK)
972- {
972+ if (curlResponseCode != CURLE_OK) {
973973 m_curlHandleContainer.DestroyCurlHandle (connectionHandle);
974- }
975- else
976- {
974+ } else {
977975 m_curlHandleContainer.ReleaseCurlHandle (connectionHandle);
978976 }
977+ connectionHandle = nullptr ;
979978 // go ahead and flush the response body stream
980979 response->GetResponseBody ().flush ();
981980 if (response->GetResponseBody ().fail ()) {
@@ -987,8 +986,6 @@ std::shared_ptr<HttpResponse> CurlHttpClient::MakeRequest(const std::shared_ptr<
987986 AWS_LOGSTREAM_ERROR (CURL_HTTP_CLIENT_TAG, ss.str ());
988987 }
989988 request->AddRequestMetric (GetHttpClientMetricNameByType (HttpClientMetricsType::RequestLatency), (DateTime::Now () - startTransmissionTime).count ());
990-
991- curl_easy_setopt (connectionHandle, CURLOPT_ERRORBUFFER, nullptr );
992989 }
993990
994991 if (headers)
0 commit comments