ruffy: catch race-condition sending keep alive during disconnect.
This commit is contained in:
parent
03443f3358
commit
cccf6f175c
1 changed files with 13 additions and 5 deletions
|
@ -277,11 +277,19 @@ public class Ruffy extends Service {
|
|||
}
|
||||
while(rtModeRunning)
|
||||
{
|
||||
if(System.currentTimeMillis() > lastRtMessageSent +1000L) {
|
||||
log("sending keep alive");
|
||||
synchronized (rtSequenceSemaphore) {
|
||||
rtSequence = Application.sendRTKeepAlive(rtSequence, btConn);
|
||||
lastRtMessageSent = System.currentTimeMillis();
|
||||
try {
|
||||
if (System.currentTimeMillis() > lastRtMessageSent + 1000L) {
|
||||
log("sending keep alive");
|
||||
synchronized (rtSequenceSemaphore) {
|
||||
rtSequence = Application.sendRTKeepAlive(rtSequence, btConn);
|
||||
lastRtMessageSent = System.currentTimeMillis();
|
||||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
if (rtModeRunning) {
|
||||
fail("Error sending keep alive while rtModeRunning is still true");
|
||||
} else {
|
||||
fail("Error sending keep alive. rtModeRunning is false, so this is most likely a race condition during disconnect");
|
||||
}
|
||||
}
|
||||
try{
|
||||
|
|
Loading…
Reference in a new issue