[libcamera-devel] [PATCH 05/14] test: event-thread: Fix compilation on Chromium OS

Laurent Pinchart laurent.pinchart at ideasonboard.com
Sun Aug 18 19:26:36 CEST 2019


Hi Jacopo,

On Sun, Aug 18, 2019 at 07:24:58PM +0200, Jacopo Mondi wrote:
> On Sun, Aug 18, 2019 at 04:13:20AM +0300, Laurent Pinchart wrote:
> > Commit 92b4af98cd67 ("test: Add EventNotifier thread move test") causes
> > the build to fail in the Chromium OS build environment, because the
> > return values of the pipe() function marked with the
> > __warn_unused_result__ attribute is ignored. Fix this.
> >
> 
> Do we want to compile tests on CrOS?

I thought we didn't, and went investigating. Turns out there's a typo in
the ebuild, so tests are always compiled. I'll fix that. It's a good
test though :-)

> > Signed-off-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
> > ---
> >  test/event-thread.cpp | 6 +++++-
> >  1 file changed, 5 insertions(+), 1 deletion(-)
> >
> > diff --git a/test/event-thread.cpp b/test/event-thread.cpp
> > index 714bc9845820..01120733eca4 100644
> > --- a/test/event-thread.cpp
> > +++ b/test/event-thread.cpp
> > @@ -25,7 +25,11 @@ public:
> >  	EventHandler()
> >  		: notified_(false)
> >  	{
> > -		pipe(pipefd_);
> > +		int ret = pipe(pipefd_);
> > +		if (ret < 0) {
> > +			ret = errno;
> > +			cout << "pipe() failed: " << strerror(ret) << endl;
> > +		}
> 
> Shouldn't we fail the test if creating the pipe fails?
> This will require moving this out of the constructor probably...

The test will eventually fail as the event will not be notified, so I
think we're good.

> >  		notifier_ = new EventNotifier(pipefd_[0], EventNotifier::Read, this);
> >  		notifier_->activated.connect(this, &EventHandler::readReady);

-- 
Regards,

Laurent Pinchart


More information about the libcamera-devel mailing list