Update of /cvsroot/netrek/client/netrekxp/src
In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv3430/src
Modified Files:
local.c newwin.c socket.c
Log Message:
Fixed longstanding bug with UDP where display was redrawn too frequently (once for udp redraw,
and again anytime a TCP packet was sent, like with warning messages).
Observer support for show speed on tactical
Index: newwin.c
===================================================================
RCS file: /cvsroot/netrek/client/netrekxp/src/newwin.c,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -d -r1.27 -r1.28
--- newwin.c 22 May 2006 08:27:53 -0000 1.27
+++ newwin.c 22 May 2006 22:05:14 -0000 1.28
@@ -1399,7 +1399,6 @@
{
while (!W_EventsPending ())
{
- HANDLE handles[FD_SETSIZE];
time_t elapsed;
fd_set rfds;
struct timeval tv;
@@ -1415,6 +1414,7 @@
FD_SET (sock, &rfds);
if (udpSock >= 0)
FD_SET (udpSock, &rfds);
+ // HANDLE handles[FD_SETSIZE];
// WaitForMultipleObjects(32, handles, TRUE, INFINITE);
select (32, &rfds, 0, 0, &tv); /* hmm, 32 might be too small */
Index: local.c
===================================================================
RCS file: /cvsroot/netrek/client/netrekxp/src/local.c,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -d -r1.26 -r1.27
--- local.c 22 May 2006 08:27:53 -0000 1.26
+++ local.c 22 May 2006 22:05:14 -0000 1.27
@@ -1135,7 +1135,7 @@
buflen = 1;
}
- if (j == me)
+ if (myPlayer(j) || isObsLockPlayer(j))
{
switch (me->p_flags & (PFGREEN | PFYELLOW | PFRED))
{
@@ -1422,7 +1422,7 @@
}
ph_counter++;
ph_col += (100/j->p_ship.s_phaserfuse/updatesPerSec);
- if (ph_counter == (updatesPerSec - 1))
+ if (ph_counter == (updatesPerSec - 1)*j->p_ship.s_phaserfuse/10)
{
ph_counter = 0;
ph_col = 0;
Index: socket.c
===================================================================
RCS file: /cvsroot/netrek/client/netrekxp/src/socket.c,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- socket.c 7 May 2006 16:59:27 -0000 1.5
+++ socket.c 22 May 2006 22:05:14 -0000 1.6
@@ -738,7 +738,11 @@
chan = sock;
if (commMode == COMM_TCP)
drop_flag = 0; /* just in case */
- retval += doRead (sock);
+ /* Bug fix for unnecessary redraws with UDP on - reported by TP */
+ if (commMode == COMM_UDP)
+ doRead (sock);
+ else
+ retval += doRead (sock);
}
dotimers ();