|
|
Created:
3 years, 7 months ago by tzik Modified:
3 years, 7 months ago Reviewers:
Will Harris CC:
chromium-reviews, asvitkine+watch_chromium.org Target Ref:
refs/heads/master Project:
chromium Visibility:
Public. |
DescriptionUse OnceCallback on Mojo interfaces in //components/leak_detector
This CL flips `use_once_callback` flag on the Mojo code generator, and
fixes all compile errors after it. After this CL, Mojo interfaces in
//components/leak_detector starts using base::OnceCallback instead
of base::Callback on its return value handling.
The migration recipe was:
- Convert pass-by-ref callback objects to pass-by-value.
- Use std::move() to forward it to other consumer, or to invoke it
with Callback::Run().
- Handle wherever copies are required manually.
- Check if the conversion doesn't change the semantics. As the transfer
and invocation clobber the callback object, care about use-after-move.
It's considered safe to consume almost scoped-out callback.
BUG=714018
Review-Url: https://codereview.chromium.org/2864283002
Cr-Commit-Position: refs/heads/master@{#474330}
Committed: https://chromium.googlesource.com/chromium/src/+/dc5014660fb72764d23948e947b7b93ffcd49e9a
Patch Set 1 #Patch Set 2 : . #Patch Set 3 : rebase #
Messages
Total messages: 27 (23 generated)
The CQ bit was checked by tzik@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 unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
Description was changed from ========== Use OnceCallback on Mojo interfaces in //components/leak_detector ========== to ========== Use OnceCallback on Mojo interfaces in //components/leak_detector This CL flips flag on the Mojo code generator, and fixes all compile errors after it. After this CL, Mojo interfaces in //components/leak_detector starts using base::OnceCallback instead of base::Callback on its return value handling. The migration recipe was: - Convert pass-by-ref callback objects to pass-by-value. - Use std::move() to forward it to other consumer, or to invoke it with Callback::Run(). - Handle wherever copies are required manually. - Check if the conversion doesn't change the semantics. As the transfer and invocation clobber the callback object, care about use-after-move. It's considered safe to consume almost scoped-out callback. BUG=714018 ==========
The CQ bit was checked by tzik@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...
Description was changed from ========== Use OnceCallback on Mojo interfaces in //components/leak_detector This CL flips flag on the Mojo code generator, and fixes all compile errors after it. After this CL, Mojo interfaces in //components/leak_detector starts using base::OnceCallback instead of base::Callback on its return value handling. The migration recipe was: - Convert pass-by-ref callback objects to pass-by-value. - Use std::move() to forward it to other consumer, or to invoke it with Callback::Run(). - Handle wherever copies are required manually. - Check if the conversion doesn't change the semantics. As the transfer and invocation clobber the callback object, care about use-after-move. It's considered safe to consume almost scoped-out callback. BUG=714018 ========== to ========== Use OnceCallback on Mojo interfaces in //components/leak_detector This CL flips flag on the Mojo code generator, and fixes all compile errors after it. After this CL, Mojo interfaces in //components/leak_detector starts using base::OnceCallback instead of base::Callback on its return value handling. The migration recipe was: - Convert pass-by-ref callback objects to pass-by-value. - Use std::move() to forward it to other consumer, or to invoke it with Callback::Run(). - Handle wherever copies are required manually. - Check if the conversion doesn't change the semantics. As the transfer and invocation clobber the callback object, care about use-after-move. It's considered safe to consume almost scoped-out callback. BUG=714018 ==========
tzik@chromium.org changed reviewers: + wfh@chromium.org
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: win_chromium_x64_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_x64_...)
The CQ bit was checked by tzik@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...
PTAL
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 tzik@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 unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: linux_chromium_asan_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...)
Description was changed from ========== Use OnceCallback on Mojo interfaces in //components/leak_detector This CL flips flag on the Mojo code generator, and fixes all compile errors after it. After this CL, Mojo interfaces in //components/leak_detector starts using base::OnceCallback instead of base::Callback on its return value handling. The migration recipe was: - Convert pass-by-ref callback objects to pass-by-value. - Use std::move() to forward it to other consumer, or to invoke it with Callback::Run(). - Handle wherever copies are required manually. - Check if the conversion doesn't change the semantics. As the transfer and invocation clobber the callback object, care about use-after-move. It's considered safe to consume almost scoped-out callback. BUG=714018 ========== to ========== Use OnceCallback on Mojo interfaces in //components/leak_detector This CL flips `use_once_callback` flag on the Mojo code generator, and fixes all compile errors after it. After this CL, Mojo interfaces in //components/leak_detector starts using base::OnceCallback instead of base::Callback on its return value handling. The migration recipe was: - Convert pass-by-ref callback objects to pass-by-value. - Use std::move() to forward it to other consumer, or to invoke it with Callback::Run(). - Handle wherever copies are required manually. - Check if the conversion doesn't change the semantics. As the transfer and invocation clobber the callback object, care about use-after-move. It's considered safe to consume almost scoped-out callback. BUG=714018 ==========
lgtm
The CQ bit was checked by tzik@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": 40001, "attempt_start_ts": 1495640461800370, "parent_rev": "c3a2fa143c3b2b867d74738b0978faf8818388a1", "commit_rev": "dc5014660fb72764d23948e947b7b93ffcd49e9a"}
Message was sent while issue was closed.
Description was changed from ========== Use OnceCallback on Mojo interfaces in //components/leak_detector This CL flips `use_once_callback` flag on the Mojo code generator, and fixes all compile errors after it. After this CL, Mojo interfaces in //components/leak_detector starts using base::OnceCallback instead of base::Callback on its return value handling. The migration recipe was: - Convert pass-by-ref callback objects to pass-by-value. - Use std::move() to forward it to other consumer, or to invoke it with Callback::Run(). - Handle wherever copies are required manually. - Check if the conversion doesn't change the semantics. As the transfer and invocation clobber the callback object, care about use-after-move. It's considered safe to consume almost scoped-out callback. BUG=714018 ========== to ========== Use OnceCallback on Mojo interfaces in //components/leak_detector This CL flips `use_once_callback` flag on the Mojo code generator, and fixes all compile errors after it. After this CL, Mojo interfaces in //components/leak_detector starts using base::OnceCallback instead of base::Callback on its return value handling. The migration recipe was: - Convert pass-by-ref callback objects to pass-by-value. - Use std::move() to forward it to other consumer, or to invoke it with Callback::Run(). - Handle wherever copies are required manually. - Check if the conversion doesn't change the semantics. As the transfer and invocation clobber the callback object, care about use-after-move. It's considered safe to consume almost scoped-out callback. BUG=714018 Review-Url: https://codereview.chromium.org/2864283002 Cr-Commit-Position: refs/heads/master@{#474330} Committed: https://chromium.googlesource.com/chromium/src/+/dc5014660fb72764d23948e947b7... ==========
Message was sent while issue was closed.
Committed patchset #3 (id:40001) as https://chromium.googlesource.com/chromium/src/+/dc5014660fb72764d23948e947b7... |