[libc-commits] [libc] [libc] Fix memory leak in linux/file.cpp (PR #150801)

via libc-commits libc-commits at lists.llvm.org
Sat Jul 26 14:28:46 PDT 2025


https://github.com/codefaber created https://github.com/llvm/llvm-project/pull/150801

When LinuxFile object creation error the preallocated buffer leaks.

>From 92cb9b22f1eb67c2e71c6e0431eef745a95c1c98 Mon Sep 17 00:00:00 2001
From: codefaber <codefaber>
Date: Sun, 27 Jul 2025 00:25:04 +0300
Subject: [PATCH] [libc] Fix memory leak in linux/file.cpp

---
 libc/src/__support/File/linux/file.cpp | 1 +
 1 file changed, 1 insertion(+)

diff --git a/libc/src/__support/File/linux/file.cpp b/libc/src/__support/File/linux/file.cpp
index 4594dadf1ccdf..23bc79177a746 100644
--- a/libc/src/__support/File/linux/file.cpp
+++ b/libc/src/__support/File/linux/file.cpp
@@ -165,6 +165,7 @@ ErrorOr<LinuxFile *> create_file_from_fd(int fd, const char *mode) {
   auto *file = new (ac)
       LinuxFile(fd, buffer, File::DEFAULT_BUFFER_SIZE, _IOFBF, true, modeflags);
   if (!ac) {
+    free(buffer);
     return Error(ENOMEM);
   }
   if (do_seek) {



More information about the libc-commits mailing list