fixed select usage
diff --git a/bbb_cape/src/bbb/uart_reader.cc b/bbb_cape/src/bbb/uart_reader.cc
index 34b907b..9abb284 100644
--- a/bbb_cape/src/bbb/uart_reader.cc
+++ b/bbb_cape/src/bbb/uart_reader.cc
@@ -84,9 +84,6 @@
LOG(FATAL, "aos_uart_reader_set_tty_options(%d) failed with %d: %s\n",
fd_, errno, strerror(errno));
}
-
- FD_ZERO(&fd_set_);
- FD_SET(fd_, &fd_set_);
}
UartReader::~UartReader() {
@@ -99,7 +96,10 @@
::aos::time::Time timeout = timeout_time - ::aos::time::Time::Now();
if (timeout < ::aos::time::Time(0, 0)) return -2;
struct timeval timeout_timeval = timeout.ToTimeval();
- switch (select(fd_ + 1, &fd_set_, NULL, NULL, &timeout_timeval)) {
+ fd_set fds;
+ FD_ZERO(&fds);
+ FD_SET(fd_, &fds);
+ switch (select(fd_ + 1, &fds, NULL, NULL, &timeout_timeval)) {
case 0:
return -2;
case -1:
diff --git a/bbb_cape/src/bbb/uart_reader.h b/bbb_cape/src/bbb/uart_reader.h
index a6cf34c..a8edc6e 100644
--- a/bbb_cape/src/bbb/uart_reader.h
+++ b/bbb_cape/src/bbb/uart_reader.h
@@ -23,8 +23,6 @@
private:
const int fd_;
- // Gets initialized to only contain fd_.
- fd_set fd_set_;
DISALLOW_COPY_AND_ASSIGN(UartReader);
};