Status: Accepted
Owner: [email protected]
CC: [email protected]
Labels: Type-Bug Priority-Medium

New issue 3286 by [email protected]: User defined constructor in Promise causes crash.
http://code.google.com/p/v8/issues/detail?id=3286

// Flags: --harmony-promises --expose-debug-as debug

var p_parent = new Promise(function(resolve, reject) {
  resolve();
});

function p_constructor(fun) { };
p_constructor.prototype = p_parent;
var p = new p_constructor();
p.constructor = p_constructor;

var q = p.chain(
  function() {
    throw new Error("caught");
  });


#
# Fatal error in ../src/handles.h, line 70
# CHECK(location_ != __null) failed
#

==== C stack trace ===============================

 1: V8_Fatal
 2: v8::internal::MaybeHandle<v8::internal::Object>::Assert()
 3: v8::internal::Execution::RunMicrotasks(v8::internal::Isolate*)
 4: v8::internal::V8::FireCallCompletedCallback(v8::internal::Isolate*)
 5: v8::Script::Run()
6: v8::Shell::ExecuteString(v8::Isolate*, v8::Handle<v8::String>, v8::Handle<v8::Value>, bool, bool)
 7: v8::SourceGroup::Execute(v8::Isolate*)
 8: v8::Shell::RunMain(v8::Isolate*, int, char**)
 9: v8::Shell::Main(int, char**)
10: main
11: __libc_start_main
12: ??


From what I can tell we are throwing an uncaught exception when running a microtask, and that's unexpected.

--
You received this message because this project is configured to send all issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings

--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to