diff options
author | Sebastian Schmidt <mrschmidt@google.com> | 2017-11-09 15:41:32 -0800 |
---|---|---|
committer | Sebastian Schmidt <mrschmidt@google.com> | 2017-11-09 15:41:32 -0800 |
commit | 4591d418da990d71989be97e2cb59530b7adbb8e (patch) | |
tree | 43453410b3a3206538d9cdd747f40203fb2f68c4 /Firebase/Database | |
parent | 86f429b2f0061a9f16c42f83841d36813892232b (diff) |
Using defereed init to ensure that we init FEmptyNode only once
Diffstat (limited to 'Firebase/Database')
-rw-r--r-- | Firebase/Database/Snapshot/FEmptyNode.m | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/Firebase/Database/Snapshot/FEmptyNode.m b/Firebase/Database/Snapshot/FEmptyNode.m index dd2d9ea..f41e118 100644 --- a/Firebase/Database/Snapshot/FEmptyNode.m +++ b/Firebase/Database/Snapshot/FEmptyNode.m @@ -21,9 +21,10 @@ + (id<FNode>) emptyNode { static FChildrenNode* empty = nil; - if (empty == nil) { + static dispatch_once_t onceToken; + dispatch_once(&onceToken, ^{ empty = [[FChildrenNode alloc] init]; - } + }); return empty; } @end |