@@ -3283,7 +3283,6 @@ struct ValueDeserializer::PrivateData {
32833283 : isolate(i), deserializer(i, data, delegate) {}
32843284 i::Isolate* isolate;
32853285 i::ValueDeserializer deserializer;
3286- bool has_aborted = false ;
32873286 bool supports_legacy_wire_format = false ;
32883287};
32893288
@@ -3293,16 +3292,8 @@ ValueDeserializer::ValueDeserializer(Isolate* isolate, const uint8_t* data,
32933292
32943293ValueDeserializer::ValueDeserializer (Isolate* isolate, const uint8_t * data,
32953294 size_t size, Delegate* delegate) {
3296- if (base::IsValueInRangeForNumericType<int >(size)) {
3297- private_ = new PrivateData (
3298- reinterpret_cast <i::Isolate*>(isolate),
3299- base::Vector<const uint8_t >(data, static_cast <int >(size)), delegate);
3300- } else {
3301- private_ =
3302- new PrivateData (reinterpret_cast <i::Isolate*>(isolate),
3303- base::Vector<const uint8_t >(nullptr , 0 ), nullptr );
3304- private_->has_aborted = true ;
3305- }
3295+ private_ = new PrivateData (reinterpret_cast <i::Isolate*>(isolate),
3296+ base::Vector<const uint8_t >(data, size), delegate);
33063297}
33073298
33083299ValueDeserializer::~ValueDeserializer () { delete private_; }
@@ -3312,15 +3303,6 @@ Maybe<bool> ValueDeserializer::ReadHeader(Local<Context> context) {
33123303 ENTER_V8_NO_SCRIPT (isolate, context, ValueDeserializer, ReadHeader,
33133304 Nothing<bool >(), i::HandleScope);
33143305
3315- // We could have aborted during the constructor.
3316- // If so, ReadHeader is where we report it.
3317- if (private_->has_aborted ) {
3318- isolate->Throw (*isolate->factory ()->NewError (
3319- i::MessageTemplate::kDataCloneDeserializationError ));
3320- has_pending_exception = true ;
3321- RETURN_ON_FAILED_EXECUTION_PRIMITIVE (bool );
3322- }
3323-
33243306 bool read_header = false ;
33253307 has_pending_exception = !private_->deserializer .ReadHeader ().To (&read_header);
33263308 RETURN_ON_FAILED_EXECUTION_PRIMITIVE (bool );
@@ -3344,12 +3326,10 @@ void ValueDeserializer::SetSupportsLegacyWireFormat(
33443326}
33453327
33463328uint32_t ValueDeserializer::GetWireFormatVersion () const {
3347- CHECK (!private_->has_aborted );
33483329 return private_->deserializer .GetWireFormatVersion ();
33493330}
33503331
33513332MaybeLocal<Value> ValueDeserializer::ReadValue (Local<Context> context) {
3352- CHECK (!private_->has_aborted );
33533333 PREPARE_FOR_EXECUTION (context, ValueDeserializer, ReadValue, Value);
33543334 i::MaybeHandle<i::Object> result;
33553335 if (GetWireFormatVersion () > 0 ) {
@@ -3366,14 +3346,12 @@ MaybeLocal<Value> ValueDeserializer::ReadValue(Local<Context> context) {
33663346
33673347void ValueDeserializer::TransferArrayBuffer (uint32_t transfer_id,
33683348 Local<ArrayBuffer> array_buffer) {
3369- CHECK (!private_->has_aborted );
33703349 private_->deserializer .TransferArrayBuffer (transfer_id,
33713350 Utils::OpenHandle (*array_buffer));
33723351}
33733352
33743353void ValueDeserializer::TransferSharedArrayBuffer (
33753354 uint32_t transfer_id, Local<SharedArrayBuffer> shared_array_buffer) {
3376- CHECK (!private_->has_aborted );
33773355 private_->deserializer .TransferArrayBuffer (
33783356 transfer_id, Utils::OpenHandle (*shared_array_buffer));
33793357}
0 commit comments