[libcamera-devel] libcamera: process: fix error checking

Message ID 20190712085057.9240-1-paul.elder@ideasonboard.com
State Accepted
Commit bfbc25785fcafb0ed2e14a19d2508238594065d3
Headers show
Series
  • [libcamera-devel] libcamera: process: fix error checking
Related show

Commit Message

Paul Elder July 12, 2019, 8:50 a.m. UTC
The return value of a read() call is mistakenly checked for nonzero
rather than less than zero. Fix this.

Fixes: df23ab95f3d7 ("libcamera: process: fix compilation on Chromium OS")
Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>
---
 src/libcamera/process.cpp | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Patch

diff --git a/src/libcamera/process.cpp b/src/libcamera/process.cpp
index aee3373..6c41da2 100644
--- a/src/libcamera/process.cpp
+++ b/src/libcamera/process.cpp
@@ -87,7 +87,8 @@  void sigact(int signal, siginfo_t *info, void *ucontext)
 void ProcessManager::sighandler(EventNotifier *notifier)
 {
 	char data;
-	if (read(pipe_[0], &data, sizeof(data))) {
+	ssize_t ret = read(pipe_[0], &data, sizeof(data));
+	if (ret < 0) {
 		LOG(Process, Error)
 			<< "Failed to read byte from signal handler pipe";
 		return;