mirror of
https://github.com/RGBCube/serenity
synced 2025-05-24 01:15:07 +00:00
Userland: Fix unnecessary heap allocation of singleton objects
In order to avoid having multiple instances, we were keeping a pointer to these singleton objects and only allocating them when it was null. We have `__cxa_guard_{acquire,release}` in the userland, so there's no need to do this dance, as the compiler will ensure that the constructors are only called once.
This commit is contained in:
parent
c1184c1fde
commit
7d11edbe17
9 changed files with 18 additions and 35 deletions
|
@ -31,10 +31,8 @@ private:
|
|||
|
||||
static HashMap<i32, RefPtr<DisplayLinkCallback>>& callbacks()
|
||||
{
|
||||
static HashMap<i32, RefPtr<DisplayLinkCallback>>* map;
|
||||
if (!map)
|
||||
map = new HashMap<i32, RefPtr<DisplayLinkCallback>>;
|
||||
return *map;
|
||||
static HashMap<i32, RefPtr<DisplayLinkCallback>> s_map;
|
||||
return s_map;
|
||||
}
|
||||
|
||||
static i32 s_next_callback_id = 1;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue