[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:29:31 PDT 2025


llvmbot wrote:


<!--LLVM PR SUMMARY COMMENT-->

@llvm/pr-subscribers-libc

Author: None (codefaber)

<details>
<summary>Changes</summary>

When LinuxFile object creation error the preallocated buffer leaks.

---
Full diff: https://github.com/llvm/llvm-project/pull/150801.diff


1 Files Affected:

- (modified) libc/src/__support/File/linux/file.cpp (+1) 


``````````diff
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) {

``````````

</details>


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


More information about the libc-commits mailing list