mirror of https://github.com/ksherlock/dict.git
fix disconnect
This commit is contained in:
parent
6941ead69b
commit
4f396d603d
11
nda.c
11
nda.c
|
@ -191,16 +191,16 @@ void TCPLoop(void) {
|
||||||
x = ConnectionPoll(&connection);
|
x = ConnectionPoll(&connection);
|
||||||
switch (connection.state) {
|
switch (connection.state) {
|
||||||
case kConnectionStateConnected:
|
case kConnectionStateConnected:
|
||||||
MarinettiCallback("\pConnected.");
|
MarinettiCallback("\pConnected");
|
||||||
++st;
|
++st;
|
||||||
break;
|
break;
|
||||||
case kConnectionStateDisconnected:
|
case kConnectionStateDisconnected:
|
||||||
MarinettiCallback("\pDisconnected.");
|
MarinettiCallback("\pDisconnected");
|
||||||
EnableControls();
|
EnableControls();
|
||||||
st = st_none;
|
st = st_none;
|
||||||
break;
|
break;
|
||||||
case kConnectionStateError:
|
case kConnectionStateError:
|
||||||
MarinettiCallback("\pConnection Error.");
|
MarinettiCallback("\pConnection Error");
|
||||||
EnableControls();
|
EnableControls();
|
||||||
st = st_none;
|
st = st_none;
|
||||||
break;
|
break;
|
||||||
|
@ -211,6 +211,7 @@ void TCPLoop(void) {
|
||||||
switch (connection.state) {
|
switch (connection.state) {
|
||||||
case kConnectionStateDisconnected:
|
case kConnectionStateDisconnected:
|
||||||
case kConnectionStateError:
|
case kConnectionStateError:
|
||||||
|
MarinettiCallback("\pDisconnected");
|
||||||
EnableControls();
|
EnableControls();
|
||||||
st = st_none;
|
st = st_none;
|
||||||
break;
|
break;
|
||||||
|
@ -231,6 +232,9 @@ redo:
|
||||||
if (sr.srRcvQueued == 0) {
|
if (sr.srRcvQueued == 0) {
|
||||||
if (GetTick() >= qtick) {
|
if (GetTick() >= qtick) {
|
||||||
/* timeout */
|
/* timeout */
|
||||||
|
MarinettiCallback("\pTimed out");
|
||||||
|
ConnectionClose(&connection);
|
||||||
|
st = st_disconnect;
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -238,6 +242,7 @@ redo:
|
||||||
terr = TCPIPReadLineTCP(ipid, "\p\n", 0x0000, (Ref)&buffer,
|
terr = TCPIPReadLineTCP(ipid, "\p\n", 0x0000, (Ref)&buffer,
|
||||||
sizeof(buffer) - 2, &rlr);
|
sizeof(buffer) - 2, &rlr);
|
||||||
|
|
||||||
|
if (terr == tcperrConClosing) terr = 0;
|
||||||
if (terr) return;
|
if (terr) return;
|
||||||
if (!rlr.rlrIsDataFlag)
|
if (!rlr.rlrIsDataFlag)
|
||||||
return;
|
return;
|
||||||
|
|
Loading…
Reference in New Issue