Procházet zdrojové kódy

LibCore: Add `Stream::File::leak_fd(Badge<IPC::File>)`

Lucas CHOLLET před 2 roky
rodič
revize
f0d2a8dd57
1 změnil soubory, kde provedl 8 přidání a 0 odebrání
  1. 8 0
      Userland/Libraries/LibCore/Stream.h

+ 8 - 0
Userland/Libraries/LibCore/Stream.h

@@ -7,6 +7,7 @@
 
 #pragma once
 
+#include <AK/Badge.h>
 #include <AK/CircularBuffer.h>
 #include <AK/DeprecatedString.h>
 #include <AK/EnumBits.h>
@@ -19,6 +20,7 @@
 #include <AK/Variant.h>
 #include <LibCore/Notifier.h>
 #include <LibCore/SocketAddress.h>
+#include <LibIPC/Forward.h>
 #include <errno.h>
 #include <netdb.h>
 
@@ -298,6 +300,12 @@ public:
     virtual ErrorOr<off_t> seek(i64 offset, SeekMode) override;
     virtual ErrorOr<void> truncate(off_t length) override;
 
+    int leak_fd(Badge<::IPC::File>)
+    {
+        m_should_close_file_descriptor = ShouldCloseFileDescriptor::No;
+        return m_fd;
+    }
+
     virtual ~File() override
     {
         if (m_should_close_file_descriptor == ShouldCloseFileDescriptor::Yes)