summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTrevor Norris <trev.norris@gmail.com>2013-11-19 16:03:11 -0800
committerTrevor Norris <trev.norris@gmail.com>2013-11-19 16:03:11 -0800
commitaef652dc111bef8dc970353243ba8ce2c23f014e (patch)
tree1170755fa79ac30043a1a0e602da230d2b111634 /src
parent3ac69469991eab4a4176f3cd851f351119c7efcd (diff)
downloadnodejs-aef652dc111bef8dc970353243ba8ce2c23f014e.tar.gz
nodejs-aef652dc111bef8dc970353243ba8ce2c23f014e.tar.bz2
nodejs-aef652dc111bef8dc970353243ba8ce2c23f014e.zip
asyncwrap: add missing TryCatch
The TryCatch was not being checked after calling the unload asyncQueue callback in AsyncWrap::MakeCallback.
Diffstat (limited to 'src')
-rw-r--r--src/async-wrap-inl.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/async-wrap-inl.h b/src/async-wrap-inl.h
index 8408e0214..58c2d78b2 100644
--- a/src/async-wrap-inl.h
+++ b/src/async-wrap-inl.h
@@ -117,6 +117,9 @@ inline v8::Handle<v8::Value> AsyncWrap::MakeCallback(
if (has_async_queue()) {
v8::Local<v8::Value> val = context.As<v8::Value>();
env()->async_listener_unload_function()->Call(process, 1, &val);
+
+ if (try_catch.HasCaught())
+ return v8::Undefined(env()->isolate());
}
Environment::TickInfo* tick_info = env()->tick_info();