Libraries: Fix visibility of Object-derivative constructors

Derivatives of Core::Object should be constructed through
ClassName::construct(), to avoid handling ref-counted objects with
refcount zero. Fixing the visibility means that misuses like this are
more difficult.
This commit is contained in:
Ben Wiederhake 2021-10-31 23:38:04 +01:00 committed by Andreas Kling
commit b3e9a4e603
Notes: sideshowbarker 2024-07-18 01:33:03 +09:00
19 changed files with 62 additions and 50 deletions

View file

@ -125,7 +125,7 @@ pid_t EventLoop::s_pid;
class InspectorServerConnection : public Object {
C_OBJECT(InspectorServerConnection)
public:
private:
explicit InspectorServerConnection(RefPtr<LocalSocket> socket)
: m_socket(move(socket))
, m_client_id(s_id_allocator->allocate())
@ -162,6 +162,7 @@ public:
inspected_object->decrement_inspector_count({});
}
public:
void send_response(const JsonObject& response)
{
auto serialized = response.to_string();