summaryrefslogtreecommitdiffstats
path: root/services/sensorservice/SensorService.cpp
diff options
context:
space:
mode:
authorMathias Agopian <mathias@google.com>2012-04-02 18:38:02 -0700
committerMathias Agopian <mathias@google.com>2012-06-27 17:07:56 -0700
commit907103bf186cfdd2ed9eb3b6c36de53ade7b16f6 (patch)
treed1e9e88c5031ca658edaf71ed884dd51c40e3db6 /services/sensorservice/SensorService.cpp
parentf5a1230d322c14c42331d0a1536b50c87742973b (diff)
downloadframeworks_native-907103bf186cfdd2ed9eb3b6c36de53ade7b16f6.zip
frameworks_native-907103bf186cfdd2ed9eb3b6c36de53ade7b16f6.tar.gz
frameworks_native-907103bf186cfdd2ed9eb3b6c36de53ade7b16f6.tar.bz2
usea socketpair instead of a pipe in BitTube
Bug: 6252830 Change-Id: I363cc7e9f73a5b7d8bbccee312c6d8938c84e99a
Diffstat (limited to 'services/sensorservice/SensorService.cpp')
-rw-r--r--services/sensorservice/SensorService.cpp11
1 files changed, 4 insertions, 7 deletions
diff --git a/services/sensorservice/SensorService.cpp b/services/sensorservice/SensorService.cpp
index dd6c426..16ddd91 100644
--- a/services/sensorservice/SensorService.cpp
+++ b/services/sensorservice/SensorService.cpp
@@ -35,6 +35,7 @@
#include <gui/ISensorServer.h>
#include <gui/ISensorEventConnection.h>
+#include <gui/SensorEventQueue.h>
#include <hardware/sensors.h>
@@ -587,10 +588,9 @@ status_t SensorService::SensorEventConnection::sendEvents(
count = numEvents;
}
- if (count == 0)
- return 0;
-
- ssize_t size = mChannel->write(scratch, count*sizeof(sensors_event_t));
+ // NOTE: ASensorEvent and sensors_event_t are the same type
+ ssize_t size = SensorEventQueue::write(mChannel,
+ reinterpret_cast<ASensorEvent const*>(scratch), count);
if (size == -EAGAIN) {
// the destination doesn't accept events anymore, it's probably
// full. For now, we just drop the events on the floor.
@@ -598,9 +598,6 @@ status_t SensorService::SensorEventConnection::sendEvents(
return size;
}
- //ALOGE_IF(size<0, "dropping %d events on the floor (%s)",
- // count, strerror(-size));
-
return size < 0 ? status_t(size) : status_t(NO_ERROR);
}