sanders: gps: switch to LA.UM.6.6.r1-04300-89xx.0 branch
This commit is contained in:
@@ -183,7 +183,7 @@ class LocTimerDelegate : public LocRankable {
|
||||
: mClient(NULL), mLock(NULL), mFutureTime(delay), mContainer(NULL) {}
|
||||
inline ~LocTimerDelegate() { if (mLock) { mLock->drop(); mLock = NULL; } }
|
||||
public:
|
||||
LocTimerDelegate(LocTimer& client, struct timespec& futureTime, bool wakeOnExpire);
|
||||
LocTimerDelegate(LocTimer& client, struct timespec& futureTime, LocTimerContainer* container);
|
||||
void destroyLocked();
|
||||
// LocRankable virtual method
|
||||
virtual int ranks(LocRankable& rankable);
|
||||
@@ -283,7 +283,8 @@ void LocTimerContainer::updateSoonestTime(LocTimerDelegate* priorTop) {
|
||||
|
||||
// check if top has changed
|
||||
if (curTop != priorTop) {
|
||||
struct itimerspec delay = {0};
|
||||
struct itimerspec delay;
|
||||
memset(&delay, 0, sizeof(struct itimerspec));
|
||||
bool toSetTime = false;
|
||||
// if tree is empty now, we remove poll and disarm timer
|
||||
if (!curTop) {
|
||||
@@ -374,7 +375,8 @@ void LocTimerContainer::expire() {
|
||||
}
|
||||
};
|
||||
|
||||
struct itimerspec delay = {0};
|
||||
struct itimerspec delay;
|
||||
memset(&delay, 0, sizeof(struct itimerspec));
|
||||
timerfd_settime(getTimerFd(), TFD_TIMER_ABSTIME, &delay, NULL);
|
||||
mPollTask->removePoll(*this);
|
||||
mMsgTask->sendMsg(new MsgTimerExpire(*this));
|
||||
@@ -472,11 +474,13 @@ bool LocTimerPollTask::run() {
|
||||
/***************************LocTimerDelegate methods***************************/
|
||||
|
||||
inline
|
||||
LocTimerDelegate::LocTimerDelegate(LocTimer& client, struct timespec& futureTime, bool wakeOnExpire)
|
||||
LocTimerDelegate::LocTimerDelegate(LocTimer& client,
|
||||
struct timespec& futureTime,
|
||||
LocTimerContainer* container)
|
||||
: mClient(&client),
|
||||
mLock(mClient->mLock->share()),
|
||||
mFutureTime(futureTime),
|
||||
mContainer(LocTimerContainer::get(wakeOnExpire)) {
|
||||
mContainer(container) {
|
||||
// adding the timer into the container
|
||||
mContainer->add(*this);
|
||||
}
|
||||
@@ -556,8 +560,13 @@ bool LocTimer::start(unsigned int timeOutInMs, bool wakeOnExpire) {
|
||||
futureTime.tv_sec += futureTime.tv_nsec / 1000000000;
|
||||
futureTime.tv_nsec %= 1000000000;
|
||||
}
|
||||
mTimer = new LocTimerDelegate(*this, futureTime, wakeOnExpire);
|
||||
// if mTimer is non 0, success should be 0; or vice versa
|
||||
|
||||
LocTimerContainer* container;
|
||||
container = LocTimerContainer::get(wakeOnExpire);
|
||||
if (NULL != container) {
|
||||
mTimer = new LocTimerDelegate(*this, futureTime, container);
|
||||
// if mTimer is non 0, success should be 0; or vice versa
|
||||
}
|
||||
success = (NULL != mTimer);
|
||||
}
|
||||
mLock->unlock();
|
||||
|
||||
Reference in New Issue
Block a user