Commit b049a74
deps: cherry-pick 88f8fe1 from upstream V8
Original commit message:
Fix collection iterator preview with deleted entries
We used to assume that we know the remaining entries returned by the
iterator based on the current index. However, that is not accurate,
since entries skipped by the current index could be deleted.
In the new approach, we allocate conservatively and shrink the result.
R=neis@chromium.org
Bug: v8:8433
Change-Id: I38a3004dc3af292daabb454bb76f38d65ef437e8
Reviewed-on: https://chromium-review.googlesource.com/c/1325966
Commit-Queue: Yang Guo <yangguo@chromium.org>
Reviewed-by: Georg Neis <neis@chromium.org>
Cr-Commit-Position: refs/heads/master@{nodejs#57360}
[The backport to v10.x resolves merge conflicts due to a different way
of accessing the “hole” value in V8, different signatures of the
`Handle` constructor and the `Shrink()` method, and neighbouring-line
conflicts in the test file.]
Refs: v8/v8@88f8fe1
Fixes: nodejs#27882
PR-URL: nodejs#24514
Refs: nodejs#24053
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Gus Caplan <me@gus.host>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>1 parent cda0d16 commit b049a74
3 files changed
+246
-28
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
33 | 33 | | |
34 | 34 | | |
35 | 35 | | |
36 | | - | |
| 36 | + | |
37 | 37 | | |
38 | 38 | | |
39 | 39 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7143 | 7143 | | |
7144 | 7144 | | |
7145 | 7145 | | |
7146 | | - | |
7147 | | - | |
7148 | | - | |
7149 | | - | |
7150 | | - | |
| 7146 | + | |
| 7147 | + | |
| 7148 | + | |
| 7149 | + | |
| 7150 | + | |
| 7151 | + | |
| 7152 | + | |
| 7153 | + | |
| 7154 | + | |
| 7155 | + | |
7151 | 7156 | | |
7152 | 7157 | | |
7153 | 7158 | | |
7154 | | - | |
7155 | 7159 | | |
7156 | | - | |
| 7160 | + | |
7157 | 7161 | | |
7158 | 7162 | | |
7159 | | - | |
7160 | | - | |
7161 | | - | |
7162 | | - | |
7163 | | - | |
7164 | | - | |
7165 | | - | |
| 7163 | + | |
| 7164 | + | |
7166 | 7165 | | |
7167 | 7166 | | |
7168 | | - | |
7169 | | - | |
7170 | | - | |
| 7167 | + | |
| 7168 | + | |
| 7169 | + | |
| 7170 | + | |
| 7171 | + | |
7171 | 7172 | | |
7172 | 7173 | | |
7173 | 7174 | | |
| |||
7250 | 7251 | | |
7251 | 7252 | | |
7252 | 7253 | | |
7253 | | - | |
7254 | | - | |
7255 | | - | |
7256 | | - | |
| 7254 | + | |
| 7255 | + | |
| 7256 | + | |
| 7257 | + | |
| 7258 | + | |
| 7259 | + | |
| 7260 | + | |
7257 | 7261 | | |
7258 | 7262 | | |
7259 | 7263 | | |
7260 | | - | |
7261 | 7264 | | |
7262 | | - | |
| 7265 | + | |
7263 | 7266 | | |
7264 | 7267 | | |
7265 | | - | |
7266 | 7268 | | |
7267 | 7269 | | |
7268 | 7270 | | |
7269 | | - | |
7270 | | - | |
7271 | | - | |
| 7271 | + | |
| 7272 | + | |
| 7273 | + | |
| 7274 | + | |
| 7275 | + | |
7272 | 7276 | | |
7273 | 7277 | | |
7274 | 7278 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
28066 | 28066 | | |
28067 | 28067 | | |
28068 | 28068 | | |
| 28069 | + | |
| 28070 | + | |
| 28071 | + | |
| 28072 | + | |
| 28073 | + | |
| 28074 | + | |
| 28075 | + | |
| 28076 | + | |
| 28077 | + | |
| 28078 | + | |
| 28079 | + | |
| 28080 | + | |
| 28081 | + | |
| 28082 | + | |
| 28083 | + | |
| 28084 | + | |
| 28085 | + | |
| 28086 | + | |
| 28087 | + | |
| 28088 | + | |
| 28089 | + | |
| 28090 | + | |
| 28091 | + | |
| 28092 | + | |
| 28093 | + | |
| 28094 | + | |
| 28095 | + | |
| 28096 | + | |
| 28097 | + | |
| 28098 | + | |
| 28099 | + | |
| 28100 | + | |
| 28101 | + | |
| 28102 | + | |
| 28103 | + | |
| 28104 | + | |
| 28105 | + | |
| 28106 | + | |
| 28107 | + | |
| 28108 | + | |
| 28109 | + | |
| 28110 | + | |
| 28111 | + | |
| 28112 | + | |
| 28113 | + | |
| 28114 | + | |
| 28115 | + | |
| 28116 | + | |
| 28117 | + | |
| 28118 | + | |
| 28119 | + | |
| 28120 | + | |
| 28121 | + | |
| 28122 | + | |
| 28123 | + | |
| 28124 | + | |
| 28125 | + | |
| 28126 | + | |
| 28127 | + | |
| 28128 | + | |
| 28129 | + | |
| 28130 | + | |
| 28131 | + | |
| 28132 | + | |
| 28133 | + | |
| 28134 | + | |
| 28135 | + | |
| 28136 | + | |
| 28137 | + | |
| 28138 | + | |
| 28139 | + | |
| 28140 | + | |
| 28141 | + | |
| 28142 | + | |
| 28143 | + | |
| 28144 | + | |
| 28145 | + | |
| 28146 | + | |
| 28147 | + | |
| 28148 | + | |
| 28149 | + | |
| 28150 | + | |
| 28151 | + | |
| 28152 | + | |
| 28153 | + | |
| 28154 | + | |
| 28155 | + | |
| 28156 | + | |
| 28157 | + | |
| 28158 | + | |
| 28159 | + | |
| 28160 | + | |
| 28161 | + | |
| 28162 | + | |
| 28163 | + | |
| 28164 | + | |
| 28165 | + | |
| 28166 | + | |
| 28167 | + | |
| 28168 | + | |
| 28169 | + | |
| 28170 | + | |
| 28171 | + | |
| 28172 | + | |
| 28173 | + | |
| 28174 | + | |
| 28175 | + | |
| 28176 | + | |
| 28177 | + | |
| 28178 | + | |
| 28179 | + | |
| 28180 | + | |
| 28181 | + | |
| 28182 | + | |
| 28183 | + | |
| 28184 | + | |
| 28185 | + | |
| 28186 | + | |
| 28187 | + | |
| 28188 | + | |
| 28189 | + | |
| 28190 | + | |
| 28191 | + | |
| 28192 | + | |
| 28193 | + | |
| 28194 | + | |
| 28195 | + | |
| 28196 | + | |
| 28197 | + | |
| 28198 | + | |
| 28199 | + | |
| 28200 | + | |
| 28201 | + | |
| 28202 | + | |
| 28203 | + | |
| 28204 | + | |
| 28205 | + | |
| 28206 | + | |
| 28207 | + | |
| 28208 | + | |
| 28209 | + | |
| 28210 | + | |
| 28211 | + | |
| 28212 | + | |
| 28213 | + | |
| 28214 | + | |
| 28215 | + | |
| 28216 | + | |
| 28217 | + | |
| 28218 | + | |
| 28219 | + | |
| 28220 | + | |
| 28221 | + | |
| 28222 | + | |
| 28223 | + | |
| 28224 | + | |
| 28225 | + | |
| 28226 | + | |
| 28227 | + | |
| 28228 | + | |
| 28229 | + | |
| 28230 | + | |
| 28231 | + | |
| 28232 | + | |
| 28233 | + | |
| 28234 | + | |
| 28235 | + | |
| 28236 | + | |
| 28237 | + | |
| 28238 | + | |
| 28239 | + | |
| 28240 | + | |
| 28241 | + | |
| 28242 | + | |
| 28243 | + | |
| 28244 | + | |
| 28245 | + | |
| 28246 | + | |
| 28247 | + | |
| 28248 | + | |
| 28249 | + | |
| 28250 | + | |
| 28251 | + | |
| 28252 | + | |
| 28253 | + | |
| 28254 | + | |
| 28255 | + | |
| 28256 | + | |
| 28257 | + | |
| 28258 | + | |
| 28259 | + | |
| 28260 | + | |
| 28261 | + | |
| 28262 | + | |
| 28263 | + | |
| 28264 | + | |
| 28265 | + | |
| 28266 | + | |
| 28267 | + | |
| 28268 | + | |
| 28269 | + | |
| 28270 | + | |
| 28271 | + | |
| 28272 | + | |
| 28273 | + | |
| 28274 | + | |
| 28275 | + | |
| 28276 | + | |
| 28277 | + | |
| 28278 | + | |
| 28279 | + | |
| 28280 | + | |
| 28281 | + | |
| 28282 | + | |
0 commit comments