You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@mesos.apache.org by Benjamin Hindman <be...@berkeley.edu> on 2017/01/08 07:16:59 UTC
Re: Review Request 54825: Made sure process::Loop instances can only
be created as shared_ptrs.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/54825/#review160826
-----------------------------------------------------------
Fix it, then Ship it!
I'll fix the issue and get it committed, thanks Benjamin!
3rdparty/libprocess/include/process/loop.hpp (line 132)
<https://reviews.apache.org/r/54825/#comment232055>
Why not use std::make_shared?
- Benjamin Hindman
On Dec. 16, 2016, 11:11 p.m., Benjamin Bannier wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/54825/
> -----------------------------------------------------------
>
> (Updated Dec. 16, 2016, 11:11 p.m.)
>
>
> Review request for mesos and Benjamin Hindman.
>
>
> Repository: mesos
>
>
> Description
> -------
>
> process::Loop is a std::enable_shared_from_this. Using stack-allocated
> instances of classes derived from std::enable_shared_from_this is
> undefined behavior.
>
> Prevent creation of stack-allocated process::Loop instances by hiding
> the constructors and providing a factory method to be used instead.
>
>
> Diffs
> -----
>
> 3rdparty/libprocess/include/process/loop.hpp b35f7e6cc2da9d1c840656f80410756ba80dbc48
>
> Diff: https://reviews.apache.org/r/54825/diff/
>
>
> Testing
> -------
>
> Observed only known test failures with:
>
> * `make check` (OS X, clang-trunk, w/optimizations, SSL)
> * `make check` and `ROOT` tests on various Linux configurations in internal CI
>
>
> Thanks,
>
> Benjamin Bannier
>
>
Re: Review Request 54825: Made sure process::Loop instances can only
be created as shared_ptrs.
Posted by Benjamin Hindman <be...@berkeley.edu>.
> On Jan. 8, 2017, 7:16 a.m., Benjamin Hindman wrote:
> > 3rdparty/libprocess/include/process/loop.hpp, line 132
> > <https://reviews.apache.org/r/54825/diff/1/?file=1588281#file1588281line132>
> >
> > Why not use std::make_shared?
Never mind! `std::make_shared` won't have access to the constructor. Thanks Benjamin!
- Benjamin
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/54825/#review160826
-----------------------------------------------------------
On Dec. 16, 2016, 11:11 p.m., Benjamin Bannier wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/54825/
> -----------------------------------------------------------
>
> (Updated Dec. 16, 2016, 11:11 p.m.)
>
>
> Review request for mesos and Benjamin Hindman.
>
>
> Repository: mesos
>
>
> Description
> -------
>
> process::Loop is a std::enable_shared_from_this. Using stack-allocated
> instances of classes derived from std::enable_shared_from_this is
> undefined behavior.
>
> Prevent creation of stack-allocated process::Loop instances by hiding
> the constructors and providing a factory method to be used instead.
>
>
> Diffs
> -----
>
> 3rdparty/libprocess/include/process/loop.hpp b35f7e6cc2da9d1c840656f80410756ba80dbc48
>
> Diff: https://reviews.apache.org/r/54825/diff/
>
>
> Testing
> -------
>
> Observed only known test failures with:
>
> * `make check` (OS X, clang-trunk, w/optimizations, SSL)
> * `make check` and `ROOT` tests on various Linux configurations in internal CI
>
>
> Thanks,
>
> Benjamin Bannier
>
>