Revert "Fix multiple V8::Dispose calls since r16563." and disable test.
authormstarzinger@chromium.org <mstarzinger@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Fri, 6 Sep 2013 11:24:26 +0000 (11:24 +0000)
committermstarzinger@chromium.org <mstarzinger@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Fri, 6 Sep 2013 11:24:26 +0000 (11:24 +0000)
TBR=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/23522022

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16569 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

src/isolate.h
src/v8.cc
test/cctest/cctest.status

index 5ca776d..741c4c0 100644 (file)
@@ -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 c4ce062..d9ce840 100644 (file)
--- 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 e09de7d..2b3419b 100644 (file)
@@ -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