Revision: 22583
Author:   [email protected]
Date:     Thu Jul 24 08:27:06 2014 UTC
Log:      Add and move DisallowHeapAllocation scope.

The move is necessary since Heap::ReserveSpace called from
DeserializePartial may allocate.

[email protected]

Review URL: https://codereview.chromium.org/413663003
http://code.google.com/p/v8/source/detail?r=22583

Modified:
 /branches/bleeding_edge/src/serialize.cc

=======================================
--- /branches/bleeding_edge/src/serialize.cc    Wed Jul 23 08:27:04 2014 UTC
+++ /branches/bleeding_edge/src/serialize.cc    Thu Jul 24 08:27:06 2014 UTC
@@ -791,6 +791,8 @@
   if (external_reference_decoder_ == NULL) {
     external_reference_decoder_ = new ExternalReferenceDecoder(isolate);
   }
+
+  DisallowHeapAllocation no_gc;

   // Keep track of the code space start and end pointers in case new
   // code objects were unserialized
@@ -1909,6 +1911,7 @@
   List<byte> payload;
   ListSnapshotSink list_sink(&payload);
   CodeSerializer cs(isolate, &list_sink, *source);
+  DisallowHeapAllocation no_gc;
   Object** location = Handle<Object>::cast(info).location();
   cs.VisitPointer(location);
   cs.Pad();
@@ -2023,7 +2026,6 @@
   for (int i = NEW_SPACE; i <= PROPERTY_CELL_SPACE; i++) {
     deserializer.set_reservation(i, scd.GetReservation(i));
   }
-  DisallowHeapAllocation no_gc;

   // Prepare and register list of attached objects.
   Vector<Object*> attached_objects = Vector<Object*>::New(1);

--
--
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/d/optout.

Reply via email to