don't use default isolate in mksnapshot
authordcarney@chromium.org <dcarney@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Fri, 20 Sep 2013 13:19:40 +0000 (13:19 +0000)
committerdcarney@chromium.org <dcarney@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Fri, 20 Sep 2013 13:19:40 +0000 (13:19 +0000)
R=svenpanne@chromium.org
BUG=

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

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

src/mksnapshot.cc
src/serialize.cc

index 9cf9e2e8a422c28f0488d011ecfceb9a9d98931d..75babb57d0e587d0d9f5c952208d4f9c79dd60d4 100644 (file)
@@ -310,6 +310,7 @@ void DumpException(Handle<Message> message) {
 
 int main(int argc, char** argv) {
   V8::InitializeICU();
+  i::Isolate::SetCrashIfDefaultIsolateInitialized();
 
   // By default, log code create information in the snapshot.
   i::FLAG_log_code = true;
@@ -330,7 +331,10 @@ int main(int argc, char** argv) {
     exit(1);
   }
 #endif
-  Isolate* isolate = Isolate::GetCurrent();
+  i::FLAG_logfile_per_isolate = false;
+
+  Isolate* isolate = v8::Isolate::New();
+  isolate->Enter();
   i::Isolate* internal_isolate = reinterpret_cast<i::Isolate*>(isolate);
   i::Serializer::Enable(internal_isolate);
   Persistent<Context> context;
index d05dd2612270c8e16f3f0c7d0354d94eaddbe49a..b3a78780a9413da5d90e5403533bea82326da410 100644 (file)
@@ -1284,7 +1284,6 @@ Serializer::Serializer(Isolate* isolate, SnapshotByteSink* sink)
       root_index_wave_front_(0) {
   // The serializer is meant to be used only to generate initial heap images
   // from a context in which there is only one isolate.
-  ASSERT(isolate_->IsDefaultIsolate());
   for (int i = 0; i <= LAST_SPACE; i++) {
     fullness_[i] = 0;
   }