Hi, Mads,
Yeah, it works! Thanks for your great job:) Best wishes Xiang On Tue, Nov 24, 2009 at 9:31 PM, Mads Sig Ager <[email protected]> wrote: > The issue should be fixed on bleeding_edge. Let me know if you are > still experiencing problems. > > Thanks, -- Mads > > On Tue, Nov 24, 2009 at 1:45 PM, Xiang Zhong <[email protected]> wrote: > > Hi, Mads, > > > > Woo! Great! > > I am really excited to here that, otherwise, I have to use some ugly > > hacking:) > > > > Many thanks~~ > > > > Sincerely~ > > Xiang > > > > > > On Tue, Nov 24, 2009 at 7:54 PM, Mads Sig Ager <[email protected]> > wrote: > >> > >> We should be able to terminate here since there is a loop. This is a > >> bug. I will make sure to fix the issue on bleeding_edge today. > >> > >> Thanks for reporting this! > >> > >> -- Mads > >> > >> On Sat, Nov 21, 2009 at 4:45 PM, Xiang Zhong <[email protected]> > wrote: > >> > Hi, All, > >> > > >> > It seems that script v8::V8::TerminateExecution can't terminate the > >> > simplest > >> > script like: > >> > for (;;) > >> > { > >> > print("Still running"); > >> > } > >> > Why?? > >> > > >> > Reproduction steps: > >> > ----------------------------- > >> > There is a test-thread-termination.cc under project ccTest, > >> > Change function Doloop to following, then the test case > >> > "test-thread-termination/TerminateOnlyV8ThreadFromThreadItself" will > >> > fail > >> > v8::Handle<v8::Value> DoLoop(const v8::Arguments& args) { > >> > v8::TryCatch try_catch; > >> > //v8::Script::Compile(v8::String::New("function f() {" > >> > // " var term = true;" > >> > // " try {" > >> > // " while(true) {" > >> > // " if (term) terminate();" > >> > // " term = false;" > >> > // " }" > >> > // " fail();" > >> > // " } catch(e) {" > >> > // " fail();" > >> > // " }" > >> > // "}" > >> > // "f()"))->Run(); > >> > v8::Script::Compile(v8::String::New("var term = true; while(true){if > >> > (term) terminate(); term = false;}"))->Run(); > >> > > >> > CHECK(try_catch.HasCaught()); > >> > CHECK(try_catch.Exception()->IsNull()); > >> > CHECK(try_catch.Message().IsEmpty()); > >> > CHECK(!try_catch.CanContinue()); > >> > return v8::Undefined(); > >> > } > >> > > >> > Does anyone encounter the same situation? > >> > > >> > Sincerely~ > >> > Xiang > >> > > > >> > > >> > >> > > > > > > > > > > > > > --~--~---------~--~----~------------~-------~--~----~ v8-users mailing list [email protected] http://groups.google.com/group/v8-users -~----------~----~----~----~------~----~------~--~---
