Skip to content

Commit 91c3cf5

Browse files
rayw000BethGriggs
authored andcommitted
deps: V8: cherry-pick 422dc378a1da
Original commit message: [deserialization] Remove unnecessarily limit on buffer size 1. Now there is no serializer/deserializer-specific buffer size limit. 2. Update AUTHORS Ref: #40059 Change-Id: Iad4c6d8f68a91ef21d3c404fb7945949e69ad9e2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3170411 Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#77084} Refs: v8/v8@422dc37 PR-URL: #40450 Fixes: #40059 Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
1 parent 3b6cf09 commit 91c3cf5

File tree

4 files changed

+18
-39
lines changed

4 files changed

+18
-39
lines changed

common.gypi

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636

3737
# Reset this number to 0 on major V8 upgrades.
3838
# Increment by one for each non-official patch applied to deps/v8.
39-
'v8_embedder_string': '-node.13',
39+
'v8_embedder_string': '-node.14',
4040

4141
##### V8 defaults for Node.js #####
4242

deps/v8/AUTHORS

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -57,13 +57,12 @@ Alexis Campailla <alexis@janeasystems.com>
5757
Allan Sandfeld Jensen <allan.jensen@qt.io>
5858
Amos Lim <eui-sang.lim@samsung.com>
5959
Andreas Anyuru <andreas.anyuru@gmail.com>
60-
Andrew Paprocki <andrew@ishiboo.com>
6160
Andrei Kashcha <anvaka@gmail.com>
61+
Andrew Paprocki <andrew@ishiboo.com>
6262
Anna Henningsen <anna@addaleax.net>
6363
Antoine du Hamel <duhamelantoine1995@gmail.com>
6464
Anton Bikineev <ant.bikineev@gmail.com>
6565
Bangfu Tao <bangfu.tao@samsung.com>
66-
Daniel Shelton <d1.shelton@samsung.com>
6766
Ben Coe <bencoe@gmail.com>
6867
Ben Newman <ben@meteor.com>
6968
Ben Noordhuis <info@bnoordhuis.nl>
@@ -74,18 +73,19 @@ Brice Dobry <brice.dobry@futurewei.com>
7473
Burcu Dogan <burcujdogan@gmail.com>
7574
Caitlin Potter <caitpotter88@gmail.com>
7675
Chao Wang <chao.w@rioslab.org>
77-
Craig Schlenter <craig.schlenter@gmail.com>
7876
Charles Kerr <charles@charleskerr.com>
7977
Chengzhong Wu <legendecas@gmail.com>
8078
Choongwoo Han <cwhan.tunz@gmail.com>
8179
Chris Nardi <hichris123@gmail.com>
8280
Christopher A. Taylor <chris@gameclosure.com>
8381
Colin Ihrig <cjihrig@gmail.com>
8482
Cong Zuo <zckevinzc@gmail.com>
83+
Craig Schlenter <craig.schlenter@gmail.com>
8584
Daniel Andersson <kodandersson@gmail.com>
8685
Daniel Bevenius <daniel.bevenius@gmail.com>
8786
Daniel Dromboski <dandromb@gmail.com>
8887
Daniel James <dnljms@gmail.com>
88+
Daniel Shelton <d1.shelton@samsung.com>
8989
Darshan Sen <raisinten@gmail.com>
9090
David Carlier <devnexen@gmail.com>
9191
David Manouchehri <david@davidmanouchehri.com>
@@ -120,13 +120,13 @@ Ingvar Stepanyan <me@rreverser.com>
120120
Ioseb Dzmanashvili <ioseb.dzmanashvili@gmail.com>
121121
Isiah Meadows <impinball@gmail.com>
122122
Jaime Bernardo <jaime@janeasystems.com>
123-
Jan de Mooij <jandemooij@gmail.com>
123+
James M Snell <jasnell@gmail.com>
124+
James Pike <g00gle@chilon.net>
124125
Jan Krems <jan.krems@gmail.com>
126+
Jan de Mooij <jandemooij@gmail.com>
125127
Janusz Majnert <jmajnert@gmail.com>
126-
Jay Freeman <saurik@saurik.com>
127-
James Pike <g00gle@chilon.net>
128-
James M Snell <jasnell@gmail.com>
129128
Javad Amiri <javad.amiri@anu.edu.au>
129+
Jay Freeman <saurik@saurik.com>
130130
Jesper van den Ende <jespertheend@gmail.com>
131131
Ji Qiu <qiuji@iscas.ac.cn>
132132
Jianghua Yang <jianghua.yjh@alibaba-inc.com>
@@ -136,8 +136,8 @@ Joel Stanley <joel@jms.id.au>
136136
Johan Bergström <johan@bergstroem.nu>
137137
Jonathan Liu <net147@gmail.com>
138138
Julien Brianceau <jbriance@cisco.com>
139-
Junha Park <jpark3@scu.edu>
140139
JunHo Seo <sejunho@gmail.com>
140+
Junha Park <jpark3@scu.edu>
141141
Junming Huang <kiminghjm@gmail.com>
142142
Kang-Hao (Kenny) Lu <kennyluck@csail.mit.edu>
143143
Karl Skomski <karl@skomski.com>
@@ -180,20 +180,21 @@ Oleksandr Chekhovskyi <oleksandr.chekhovskyi@gmail.com>
180180
Oliver Dunk <oliver@oliverdunk.com>
181181
Paolo Giarrusso <p.giarrusso@gmail.com>
182182
Patrick Gansterer <paroga@paroga.com>
183+
Paul Lind <plind44@gmail.com>
184+
Pavel Medvedev <pmedvedev@gmail.com>
183185
Peng Fei <pfgenyun@gmail.com>
184186
Peng Wu <peng.w@rioslab.org>
185187
Peng-Yu Chen <pengyu@libstarrify.so>
186188
Peter Rybin <peter.rybin@gmail.com>
187189
Peter Varga <pvarga@inf.u-szeged.hu>
188190
Peter Wong <peter.wm.wong@gmail.com>
189-
Paul Lind <plind44@gmail.com>
190-
Pavel Medvedev <pmedvedev@gmail.com>
191191
PhistucK <phistuck@gmail.com>
192192
Qingyan Li <qingyan.liqy@alibaba-inc.com>
193193
Qiuyi Zhang <qiuyi.zqy@alibaba-inc.com>
194194
Rafal Krypa <rafal@krypa.net>
195195
Raul Tambre <raul@tambre.ee>
196196
Ray Glover <ray@rayglover.net>
197+
Ray Wang <ray@isrc.iscas.ac.cn>
197198
Refael Ackermann <refack@gmail.com>
198199
Rene Rebe <rene@exactcode.de>
199200
Reza Yazdani <ryazdani@futurewei.com>
@@ -218,11 +219,13 @@ Stefan Penner <stefan.penner@gmail.com>
218219
Stephan Hartmann <stha09@googlemail.com>
219220
Stephen Belanger <stephen.belanger@datadoghq.com>
220221
Sylvestre Ledru <sledru@mozilla.com>
222+
Takeshi Yoneda <takeshi@tetrate.io>
221223
Taketoshi Aono <brn@b6n.ch>
222224
Tao Liqiang <taolq@outlook.com>
223225
Teddy Katz <teddy.katz@gmail.com>
224226
Thomas Young <wenzhang5800@gmail.com>
225227
Tiancheng "Timothy" Gu <timothygu99@gmail.com>
228+
Tianping Yang <yangtianping@oppo.com>
226229
Tobias Burnus <burnus@net-b.de>
227230
Tobias Nießen <tniessen@tnie.de>
228231
Ujjwal Sharma <usharma1998@gmail.com>
@@ -246,13 +249,11 @@ Yi Wang <wangyi8848@gmail.com>
246249
Yong Wang <ccyongwang@tencent.com>
247250
Youfeng Hao <ajihyf@gmail.com>
248251
Yu Yin <xwafish@gmail.com>
249-
Yusif Khudhur <yusif.khudhur@gmail.com>
250252
Yuri Iozzelli <yuri@leaningtech.com>
253+
Yusif Khudhur <yusif.khudhur@gmail.com>
251254
Zac Hansen <xaxxon@gmail.com>
252255
Zeynep Cankara <zeynepcankara402@gmail.com>
253256
Zhao Jiazhong <kyslie3100@gmail.com>
254257
Zheng Liu <i6122f@gmail.com>
255258
Zhongping Wang <kewpie.w.zp@gmail.com>
256259
柳荣一 <admin@web-tinker.com>
257-
Tianping Yang <yangtianping@oppo.com>
258-
Takeshi Yoneda <takeshi@tetrate.io>

deps/v8/src/api/api.cc

Lines changed: 2 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -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

32943293
ValueDeserializer::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

33083299
ValueDeserializer::~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

33463328
uint32_t ValueDeserializer::GetWireFormatVersion() const {
3347-
CHECK(!private_->has_aborted);
33483329
return private_->deserializer.GetWireFormatVersion();
33493330
}
33503331

33513332
MaybeLocal<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

33673347
void 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

33743353
void 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
}

deps/v8/src/objects/value-serializer.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1117,7 +1117,7 @@ ValueDeserializer::ValueDeserializer(Isolate* isolate,
11171117
: isolate_(isolate),
11181118
delegate_(delegate),
11191119
position_(data.begin()),
1120-
end_(data.begin() + data.length()),
1120+
end_(data.end()),
11211121
id_map_(isolate->global_handles()->Create(
11221122
ReadOnlyRoots(isolate_).empty_fixed_array())) {}
11231123

0 commit comments

Comments
 (0)