1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 16:47:36 +00:00

Kernel: Make File weakable

This will be useful for some things. This also removes the need for
TCPSocket to be special about this.
This commit is contained in:
Andreas Kling 2020-09-06 18:46:46 +02:00
parent 22831033d0
commit 48a0b76a77
2 changed files with 5 additions and 3 deletions

View file

@ -30,6 +30,7 @@
#include <AK/RefCounted.h>
#include <AK/String.h>
#include <AK/Types.h>
#include <AK/Weakable.h>
#include <Kernel/Forward.h>
#include <Kernel/KResult.h>
#include <Kernel/UnixTypes.h>
@ -64,7 +65,9 @@ namespace Kernel {
// - Called by mmap() when userspace wants to memory-map this File somewhere.
// - Should create a Region in the Process and return it if successful.
class File : public RefCounted<File> {
class File
: public RefCounted<File>
, public Weakable<File> {
public:
virtual ~File();

View file

@ -34,8 +34,7 @@
namespace Kernel {
class TCPSocket final : public IPv4Socket
, public Weakable<TCPSocket> {
class TCPSocket final : public IPv4Socket {
public:
static void for_each(Function<void(const TCPSocket&)>);
static NonnullRefPtr<TCPSocket> create(int protocol);