|
|
Created:
3 years, 11 months ago by ahaas Modified:
3 years, 11 months ago Reviewers:
Clemens Hammacher CC:
v8-reviews_googlegroups.com Target Ref:
refs/pending/heads/master Project:
v8 Visibility:
Public. |
Description[wasm] The exports property of a wasm instance should always exist
R=clemensh@chromium.org
BUG=chromium:663994
Review-Url: https://codereview.chromium.org/2622563002
Cr-Commit-Position: refs/heads/master@{#42163}
Committed: https://chromium.googlesource.com/v8/v8/+/a2081b2d7c7e662abe4d67c4a544019b7eb79ec9
Patch Set 1 #Patch Set 2 : The exports should never be undefined. #Patch Set 3 : Do a better undefined check. #Patch Set 4 : Do a better undefined check. #
Messages
Total messages: 23 (16 generated)
The CQ bit was checked by ahaas@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
As discussed offline: The exports object should always exist, compare https://github.com/WebAssembly/design/blob/master/JS.md#webassemblyinstance-c.... In wasm-module.cc, method ProcessExports, we currently do this check: > 1822 if (module_->export_table.size() > 0 && module_->origin == kWasmOrigin) { > 1823 // Create the "exports" object. The first condition should not be there IMO.
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
Description was changed from ========== [wasm-fuzzer] Check if the exports field exists before inspecting it. The wasm fuzzer tries to instantiate the fuzzer bytes directly as a wasm module. If instantiation works, then it tries to execute the {main} function which is stored in the {exports} field of the wasm module instance. If the {exports} field does not exist then a lookup for {main} fails and crashes. I check now whether {exports} exists in instance, and if it does not exists, we do not try to look up {main}. I didn't add a test because this is only a change in testing code. R=clemensh@chromium.org BUG=chromium:663994 ========== to ========== [wasm] The exports property of a wasm instance should always exist R=clemensh@chromium.org BUG=chromium:663994 ==========
On 2017/01/09 at 12:26:44, clemensh wrote: > As discussed offline: The exports object should always exist, compare https://github.com/WebAssembly/design/blob/master/JS.md#webassemblyinstance-c.... > > In wasm-module.cc, method ProcessExports, we currently do this check: > > 1822 if (module_->export_table.size() > 0 && module_->origin == kWasmOrigin) { > > 1823 // Create the "exports" object. > > The first condition should not be there IMO. Good observation, thanks. Done.
The CQ bit was checked by ahaas@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was checked by ahaas@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
On 2017/01/09 at 13:39:30, ahaas wrote: > On 2017/01/09 at 12:26:44, clemensh wrote: > > As discussed offline: The exports object should always exist, compare https://github.com/WebAssembly/design/blob/master/JS.md#webassemblyinstance-c.... > > > > In wasm-module.cc, method ProcessExports, we currently do this check: > > > 1822 if (module_->export_table.size() > 0 && module_->origin == kWasmOrigin) { > > > 1823 // Create the "exports" object. > > > > The first condition should not be there IMO. > > Good observation, thanks. Done. I changed the undefined check
The CQ bit was checked by ahaas@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
lgtm
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
The CQ bit was checked by ahaas@chromium.org
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
CQ is committing da patch. Bot data: {"patchset_id": 60001, "attempt_start_ts": 1484042007351800, "parent_rev": "0df234b0edb49fa83e8b7b5464d3340f8ac27fd9", "commit_rev": "a2081b2d7c7e662abe4d67c4a544019b7eb79ec9"}
Message was sent while issue was closed.
Description was changed from ========== [wasm] The exports property of a wasm instance should always exist R=clemensh@chromium.org BUG=chromium:663994 ========== to ========== [wasm] The exports property of a wasm instance should always exist R=clemensh@chromium.org BUG=chromium:663994 Review-Url: https://codereview.chromium.org/2622563002 Cr-Commit-Position: refs/heads/master@{#42163} Committed: https://chromium.googlesource.com/v8/v8/+/a2081b2d7c7e662abe4d67c4a544019b7eb... ==========
Message was sent while issue was closed.
Committed patchset #4 (id:60001) as https://chromium.googlesource.com/v8/v8/+/a2081b2d7c7e662abe4d67c4a544019b7eb... |