]> git.ipfire.org Git - thirdparty/curl.git/commitdiff
asyn-thread: fix socket leak on OOM
authorDaniel Stenberg <daniel@haxx.se>
Sun, 14 Aug 2022 21:52:12 +0000 (23:52 +0200)
committerDaniel Stenberg <daniel@haxx.se>
Tue, 16 Aug 2022 06:54:25 +0000 (08:54 +0200)
Closes #9310

lib/asyn-thread.c

index 92c38f266a7fbe4150d4f59ff6eed2cd83385001..1ab1e977b56604f9a4f84fee6001b40b25068263 100644 (file)
@@ -264,7 +264,12 @@ int init_thread_sync_data(struct thread_data *td,
   return 1;
 
  err_exit:
-  /* Memory allocation failed */
+#ifndef CURL_DISABLE_SOCKETPAIR
+  if(tsd->sock_pair[0] != CURL_SOCKET_BAD) {
+    sclose(tsd->sock_pair[0]);
+    tsd->sock_pair[0] = CURL_SOCKET_BAD;
+  }
+#endif
   destroy_thread_sync_data(tsd);
   return 0;
 }