Reviewers: Jakob,
Description:
Revert "Fix multiple V8::Dispose calls since r16563." and disable test.
[email protected]
Please review this at https://codereview.chromium.org/23522022/
SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge
Affected files (+5, -13 lines):
M src/isolate.h
M src/v8.cc
M test/cctest/cctest.status
Index: src/isolate.h
diff --git a/src/isolate.h b/src/isolate.h
index
5ca776d580d2b3575d546515b1350f497d06f022..741c4c02ffb17cf409f16a4067e3fd560bc5e2b2
100644
--- a/src/isolate.h
+++ b/src/isolate.h
@@ -1383,7 +1383,6 @@ class Isolate {
friend class v8::Isolate;
friend class v8::Locker;
friend class v8::Unlocker;
- friend class V8;
DISALLOW_COPY_AND_ASSIGN(Isolate);
};
Index: src/v8.cc
diff --git a/src/v8.cc b/src/v8.cc
index
c4ce0629c8021b89d39f59c8703dc64371330bb8..d9ce8404acddea3391c511ee03ce20e475a27055
100644
--- a/src/v8.cc
+++ b/src/v8.cc
@@ -63,8 +63,8 @@ bool V8::Initialize(Deserializer* des) {
// The current thread may not yet had entered an isolate to run.
// Note the Isolate::Current() may be non-null because for various
- // initialization purposes an initializing thread may be assigned an
- // isolate but not actually enter it.
+ // initialization purposes an initializing thread may be assigned an
isolate
+ // but not actually enter it.
if (i::Isolate::CurrentPerIsolateThreadData() == NULL) {
i::Isolate::EnterDefaultIsolate();
}
@@ -84,15 +84,6 @@ bool V8::Initialize(Deserializer* des) {
void V8::TearDown() {
- // The current thread may not yet had entered an isolate to run or may
- // have already disposed the entered isolated before.
- // Note the Isolate::Current() may be non-null because for various
- // initialization purposes an initializing thread may be assigned an
- // isolate but not actually enter it.
- if (i::Isolate::CurrentPerIsolateThreadData() == NULL) {
- return;
- }
-
Isolate* isolate = Isolate::Current();
ASSERT(isolate->IsDefaultIsolate());
if (!isolate->IsInitialized()) return;
@@ -100,7 +91,6 @@ void V8::TearDown() {
// The isolate has to be torn down before clearing the LOperand
// caches so that the optimizing compiler thread (if running)
// doesn't see an inconsistent view of the lithium instructions.
- Isolate::SetIsolateThreadLocals(isolate, NULL);
isolate->TearDown();
delete isolate;
Index: test/cctest/cctest.status
diff --git a/test/cctest/cctest.status b/test/cctest/cctest.status
index
e09de7d0d6ad940b59e80bb425f2052d4a9d1680..2b3419bce2e60efd09db0bbf0c5cabe837f09cd4
100644
--- a/test/cctest/cctest.status
+++ b/test/cctest/cctest.status
@@ -34,6 +34,9 @@ test-api/Bug*: FAIL
# BUG(382): Weird test. Can't guarantee that it never times out.
test-api/ApplyInterruption: PASS || TIMEOUT
+# TODO(mstarzinger): Fail gracefully on multiple V8::Dispose calls.
+test-api/InitializeAndDisposeMultiple: SKIP
+
# These tests always fail. They are here to test test.py. If
# they don't fail then test.py has failed.
test-serialize/TestThatAlwaysFails: FAIL
--
--
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/groups/opt_out.