Return false on socket read error
FrameworkListener was returning the errno from a function marked as returning bool which caused an implicit conversion to true since we were in an error block where errno was set to something non-zero. This caused the clients that had errors to stick around forever and not get removed from the set of file descriptors that SocketListener was listening to. Change-Id: Ia27a4cac47459f3a3c2bb6a7f66803a3165c894a
This commit is contained in:
parent
09dd3e57b9
commit
f31d2ed1fd
|
@ -35,7 +35,7 @@ bool FrameworkListener::onDataAvailable(SocketClient *c) {
|
|||
|
||||
if ((len = read(c->getSocket(), buffer, sizeof(buffer) -1)) < 0) {
|
||||
SLOGE("read() failed (%s)", strerror(errno));
|
||||
return errno;
|
||||
return false;
|
||||
} else if (!len)
|
||||
return false;
|
||||
|
||||
|
|
Loading…
Reference in New Issue