Hi, another patch. It has to be applied on top of the previous one I sent. It fixes a compile problem on FreeBSD and adds wheel mouse support to cfclient. Ciao, ET. -------------- next part -------------- diff -ru crossfire-client-1.1.0-et/common/client.c crossfire-client-1.1.0-et2/common/client.c --- crossfire-client-1.1.0-et/common/client.c Mon Jan 7 17:05:59 2002 +++ crossfire-client-1.1.0-et2/common/client.c Wed Jan 9 02:20:09 2002 @@ -161,6 +161,7 @@ #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> +#include <netinet/tcp.h> #include <ctype.h> #include <arpa/inet.h> @@ -205,6 +206,10 @@ fprintf(stderr,"InitConnection: Error on fcntl.\n"); } +#ifdef TCP_NODELAY +#ifndef SOL_TCP +#define SOL_TCP IPPROTO_TCP +#endif /* turn off nagle algorithm */ if (getenv("CF_NAGLE") == NULL) { /* disabled by setting CF_NAGLE */ int i=1; @@ -212,6 +217,7 @@ if (setsockopt(fd, SOL_TCP, TCP_NODELAY, &i, sizeof(i)) == -1) perror("TCP_NODELAY"); } +#endif if (getsockopt(fd,SOL_SOCKET,SO_RCVBUF, (char*)&oldbufsize, &buflen)==-1) oldbufsize=0; diff -ru crossfire-client-1.1.0-et/x11/x11.c crossfire-client-1.1.0-et2/x11/x11.c --- crossfire-client-1.1.0-et/x11/x11.c Mon Jan 7 21:59:11 2002 +++ crossfire-client-1.1.0-et2/x11/x11.c Wed Jan 9 01:26:29 2002 @@ -2299,7 +2299,10 @@ { int y = xbutton->y-16, x=xbutton->x, button = xbutton->button,dy,pos=0; - if (!infodata.has_scrollbar || x<=(infodata.width-SCROLLBAR_WIDTH-4)) + if (!infodata.has_scrollbar) + return; + + if (button < 4 && x <= infodata.width-SCROLLBAR_WIDTH-4) return; dy = y / FONTHEIGHT > 0 ? y / FONTHEIGHT : 1; @@ -2317,6 +2320,14 @@ pos = infodata.bar_pos + dy; break; + case 4: + pos = infodata.bar_pos - 1; + break; + + case 5: + pos = infodata.bar_pos + 1; + break; + } if (pos<infodata.maxdisp) { if (infodata.numlines<infodata.maxdisp) @@ -2350,6 +2361,16 @@ if (y < 0 || y > image_size * l->size) return 1; + + if (button == 4 || button == 5) + { + if (button == 4) + l->item_pos--; + else + l->item_pos++; + draw_list(l); + return 1; + } if (x > l->width-23) { /* scrollbar */