| Index: src/mksnapshot.cc
 | 
| diff --git a/src/mksnapshot.cc b/src/mksnapshot.cc
 | 
| index 9e63555b5e218742eef9ad2eda52eac13bc2ebb3..156cd77c3e95bb7e4f7e3f1a1c0503a6fd8383d8 100644
 | 
| --- a/src/mksnapshot.cc
 | 
| +++ b/src/mksnapshot.cc
 | 
| @@ -333,8 +333,9 @@ int main(int argc, char** argv) {
 | 
|      exit(1);
 | 
|    }
 | 
|  #endif
 | 
| -  i::Serializer::Enable();
 | 
|    Isolate* isolate = Isolate::GetCurrent();
 | 
| +  i::Isolate* internal_isolate = reinterpret_cast<i::Isolate*>(isolate);
 | 
| +  i::Serializer::Enable(internal_isolate);
 | 
|    Persistent<Context> context;
 | 
|    {
 | 
|      HandleScope handle_scope(isolate);
 | 
| @@ -391,7 +392,7 @@ int main(int argc, char** argv) {
 | 
|    // Make sure all builtin scripts are cached.
 | 
|    { HandleScope scope(isolate);
 | 
|      for (int i = 0; i < i::Natives::GetBuiltinsCount(); i++) {
 | 
| -      i::Isolate::Current()->bootstrapper()->NativesSourceLookup(i);
 | 
| +      internal_isolate->bootstrapper()->NativesSourceLookup(i);
 | 
|      }
 | 
|    }
 | 
|    // If we don't do this then we end up with a stray root pointing at the
 | 
| @@ -402,10 +403,11 @@ int main(int argc, char** argv) {
 | 
|    CppByteSink sink(argv[1]);
 | 
|    // This results in a somewhat smaller snapshot, probably because it gets rid
 | 
|    // of some things that are cached between garbage collections.
 | 
| -  i::StartupSerializer ser(&sink);
 | 
| +  i::StartupSerializer ser(internal_isolate, &sink);
 | 
|    ser.SerializeStrongReferences();
 | 
|  
 | 
| -  i::PartialSerializer partial_ser(&ser, sink.partial_sink());
 | 
| +  i::PartialSerializer partial_ser(
 | 
| +      internal_isolate, &ser, sink.partial_sink());
 | 
|    partial_ser.Serialize(&raw_context);
 | 
|  
 | 
|    ser.SerializeWeakReferences();
 | 
| 
 |