refactor: omit redundant map searches (#19929)
* refactor: don't walk maps twice to remove elements * refactor: don't walk maps twice to read elements * refactor: don't walk maps twice to insert elements * refactor: don't walk map 3x on UvTaskRunner timeout * refactor: more don't-walk-maps-twice cleanup * fixup! refactor: don't walk maps twice to insert elements * refactor: don't walk containers twice when erasing * refactor: omit excess lookups in RemoteObjectFreer
This commit is contained in:
parent
27ce6a9cd3
commit
987300c97a
14 changed files with 88 additions and 86 deletions
|
@ -153,14 +153,12 @@ void AtomRendererClient::DidCreateScriptContext(
|
|||
void AtomRendererClient::WillReleaseScriptContext(
|
||||
v8::Handle<v8::Context> context,
|
||||
content::RenderFrame* render_frame) {
|
||||
if (injected_frames_.find(render_frame) == injected_frames_.end())
|
||||
if (injected_frames_.erase(render_frame) == 0)
|
||||
return;
|
||||
injected_frames_.erase(render_frame);
|
||||
|
||||
node::Environment* env = node::Environment::GetCurrent(context);
|
||||
if (environments_.find(env) == environments_.end())
|
||||
if (environments_.erase(env) == 0)
|
||||
return;
|
||||
environments_.erase(env);
|
||||
|
||||
mate::EmitEvent(env->isolate(), env->process_object(), "exit");
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue