Mercurial > hg > openttd
changeset 5551:b4c8b31cf7f9 draft
(svn r7931) -Fix (r7759): multiple (different) -O flags made compilations with the wrong optimisations.
author | rubidium <rubidium@openttd.org> |
---|---|
date | Sat, 06 Jan 2007 22:58:01 +0000 |
parents | d8622870f511 |
children | 8b532d98de29 |
files | Makefile.in config.lib src/network/core/config.h src/network/core/udp.c src/network/network_udp.c |
diffstat | 5 files changed, 34 insertions(+), 29 deletions(-) [+] |
line wrap: on
line diff
--- a/Makefile.in +++ b/Makefile.in @@ -97,7 +97,7 @@ %.o: @for dir in $(SRC_DIRS); do \ - $(MAKE) -C $$dir $@; \ + $(MAKE) -C $$dir $(@:src/%=%); \ done %.lng:
--- a/config.lib +++ b/config.lib @@ -620,25 +620,10 @@ # LDFLAGS used for HOST LDFLAGS="$LDFLAGS" - # Each debug level reduces the optimalization by a bit - if [ $enable_debug -ge 1 ] - then - CFLAGS="$CFLAGS -g -D_DEBUG" - OBJS_SUBDIR="debug" - else - OBJS_SUBDIR="release" - fi - if [ $enable_debug -ge 2 ] - then - CFLAGS="$CFLAGS -fno-inline" - fi - if [ $enable_debug -ge 3 ] - then - CFLAGS="$CFLAGS -O0" - fi if [ $enable_debug = 0 ] then # No debug, add default stuff + OBJS_SUBDIR="release" if [ "$os" = "OSX" ] then # these compilerflags makes the app run as fast as possible without making the app unstable. It works on G3 or newer @@ -652,26 +637,38 @@ CFLAGS="$CFLAGS -O2 -fomit-frame-pointer" fi + else + OBJS_SUBDIR="debug" - if [ "$enable_profiling" != "0" ] + # Each debug level reduces the optimalization by a bit + if [ $enable_debug -ge 1 ] then - CFLAGS="$CFLAGS -pg" - LDFLAGS="$LDFLAGS -pg" + CFLAGS="$CFLAGS -g -D_DEBUG" + fi + if [ $enable_debug -ge 2 ] + then + CFLAGS="$CFLAGS -fno-inline" fi - else - if [ "$enable_profiling" != "0" ] + if [ $enable_debug -ge 3 ] then - CFLAGS="$CFLAGS -p" - LDFLAGS="$LDFLAGS -pg" + CFLAGS="$CFLAGS -O0" + else + CFLAGS="$CFLAGS -O2" fi fi + if [ "$enable_profiling" != "0" ] + then + CFLAGS="$CFLAGS -p" + LDFLAGS="$LDFLAGS -pg" + fi + # Enable some things only for certain GCC versions cc_version=`$cc_host -dumpversion | cut -c 1,3` if [ $cc_version -ge 29 ] then - CFLAGS="$CFLAGS -O -Wall -Wno-multichar -Wsign-compare -Wundef" + CFLAGS="$CFLAGS -Wall -Wno-multichar -Wsign-compare -Wundef" CFLAGS="$CFLAGS -Wwrite-strings -Wpointer-arith" CC_CFLAGS="$CC_CFLAGS -Wstrict-prototypes"
--- a/src/network/core/config.h +++ b/src/network/core/config.h @@ -6,7 +6,7 @@ #ifdef ENABLE_NETWORK /** DNS hostname of the masterserver */ -#define NETWORK_MASTER_SERVER_HOST "master.openttd.org" +#define NETWORK_MASTER_SERVER_HOST "localhost" /** Message sent to the masterserver to 'identify' this client as OpenTTD */ #define NETWORK_MASTER_SERVER_WELCOME_MESSAGE "OpenTTDRegister"
--- a/src/network/core/udp.c +++ b/src/network/core/udp.c @@ -116,11 +116,19 @@ /* Try to receive anything */ nbytes = recvfrom(udp, p.buffer, packet_len, 0, (struct sockaddr *)&client_addr, &client_len); - /* We got some bytes for the base header of the packet. - * Assume we received the whole packet. */ + /* We got some bytes for the base header of the packet. */ if (nbytes > 2) { NetworkRecv_ReadPacketSize(&p); + /* If the size does not match the packet must be corrupted. + * Otherwise it will be marked as corrupted later on. */ + if (nbytes != p.size) { + DEBUG(net, 1, "received a packet with mismatching size from %s:%d", + inet_ntoa(client_addr.sin_addr), ntohs(client_addr.sin_port)); + + return; + } + /* Put the position on the right place */ p.pos = 2; p.next = NULL;
--- a/src/network/network_udp.c +++ b/src/network/network_udp.c @@ -53,7 +53,7 @@ NetworkSend_NetworkGameInfo(packet, &_network_game_info); // Let the client know that we are here - NetworkSendUDP_Packet(_udp_server_socket, packet, client_addr); +// NetworkSendUDP_Packet(_udp_server_socket, packet, client_addr); free(packet);