Index: NEWS =================================================================== RCS file: /home/freeciv/CVS/freeciv/NEWS,v retrieving revision 1.38 diff -u -r1.38 NEWS --- NEWS 2002/06/01 19:05:50 1.38 +++ NEWS 2002/06/27 18:03:56 @@ -64,6 +64,7 @@ - The map and ai code has been cleaned up significantly. - Translations improved. Added better support for plural forms. - Several bugs squished and a lot of work done under the hood. + - For an overview of the remaining bugs please visit doc/BUGS. WHAT'S CHANGED SINCE 1.11.4 Index: common/packets.c =================================================================== RCS file: /home/freeciv/CVS/freeciv/common/packets.c,v retrieving revision 1.206 diff -u -r1.206 packets.c --- common/packets.c 2002/05/16 10:10:23 1.206 +++ common/packets.c 2002/06/27 18:03:59 @@ -35,6 +35,7 @@ #include "capability.h" #include "events.h" +#include "fcintl.h" #include "log.h" #include "mem.h" #include "support.h" @@ -4472,6 +4473,17 @@ iget_uint32(&iter, &packet->total_length); iget_uint32(&iter, &packet->chunk_length); + /* + * Because of the changes in enum packet_type during the 1.12.1 + * timeframe an old server will trigger the following condition. + */ + if (packet->total_length <= 0 + || packet->total_length >= MAX_ATTRIBUTE_BLOCK) { + freelog(LOG_ERROR, _("The server you tried to connect is too old " + "(1.12.0 or earlier). Please choose another " + "server next time. Good bye.")); + exit(EXIT_FAILURE); + } assert(packet->total_length > 0 && packet->total_length < MAX_ATTRIBUTE_BLOCK); /* 500 bytes header, just to be sure */ Index: doc/BUGS =================================================================== RCS file: /home/freeciv/CVS/freeciv/doc/BUGS,v retrieving revision 1.5 diff -u -r1.5 BUGS --- doc/BUGS 2002/06/08 10:47:25 1.5 +++ doc/BUGS 2002/06/27 18:04:00 @@ -82,6 +82,10 @@ - The xaw client does not work well with the KDE window manager. Try using the gtk client or another window manager. + - Version 1.13.0 will not work with version 1.12.0 or any previous + versions. Note that the client will fail a bit more hard by just + printing a message to stdout and exiting afterwards. + REPORTING A BUG: ================ Index: po/POTFILES.in =================================================================== RCS file: /home/freeciv/CVS/freeciv/po/POTFILES.in,v retrieving revision 1.52 diff -u -r1.52 POTFILES.in --- po/POTFILES.in 2002/06/01 19:48:43 1.52 +++ po/POTFILES.in 2002/06/27 18:04:00 @@ -5,6 +5,7 @@ common/log.c common/map.c common/mem.c +common/packets.c common/player.c common/shared.c common/support.c