1
0
Fork 0

(svn r19938) [1.0] -Backport from trunk:

- Fix: When 'pause on new game' is set, pause the game before CleanupGeneration() to avoid conflicts with concurrent GUI code [FS#3857] (r19934)
- Fix: Blocked roadvehicles should first check whether they are still blocked before accelerating again, instead of continuous starting/stopping (r19755)
- Fix: [NewGRF] Passing some invalid data to industry variable 67/68 could cause a crash (r19713)
- Update: changelog and such
release/1.0
rubidium 2010-06-05 21:13:35 +00:00
parent 9f8627152b
commit e31a99619e
9 changed files with 72 additions and 7 deletions

View File

@ -1,3 +1,48 @@
1.0.2-RC1 (2010-06-05)
------------------------------------------------------------------------
- Feature: Translated desktop shortcut comments (r19884)
- Fix: When 'pause on new game' is set, pause the game before CleanupGeneration() to avoid conflicts with concurrent GUI code [FS#3857] (r19934)
- Fix: Pay for the rail/road when constructing tunnels, bridges, depots and stations [FS#3859, FS#3827] (r19925, r19887, r19881)
- Fix: Closing chatbox could cause glitches when news message was shown [FS#3865] (r19921)
- Fix: [YAPP] Inform the pathfinder as well about the fact that the backside of an one-way path signal can be a safe waiting point [FS#3803] (r19896)
- Fix: Allow loading savegames from the console without specifying the ".sav" extension, i.e. make it consistent with saving savegames from the console [FS#3761] (r19885)
- Fix: Dropdowns did affect positioning of new windows because they were not yet removed when the new windows were positioned [FS#3812] (r19883)
- Fix: [NoAI] AIEngine::IsValidEngine() and AIEngine::IsBuildable() returned false positives. Especially wagons of unavailable railtypes were reported available (r19880)
- Fix: Default vehicle group texts were drawn one pixel too low [FS#3851] (r19878)
- Fix: It was not possible to send all trains with common waypoint order to depot (r19876)
- Fix: Compilation for NetBSD [FS#3809, FS#3840, FS#3845] (r19874, r19859, r19853, r19781)
- Fix: If the (guessed initial) destination tile of a road vehicle was not a road stop but was a T-junction or turn, the road vehicles would jump around in circles [FS#3817] (r19873)
- Fix: When a network connection gets lost and a game with AIs was loaded the client might crash due to the AIs not being loaded while the game loop is executed [FS#3819] (r19869)
- Fix: Use non-breaking spaces for currency pre-/postfixes (r19867)
- Fix: Crash when changing/viewing locale settings in the console [FS#3830] (r19865, r19864, r19863, r19862)
- Fix: Drawing fallback sprites for unavailable NewGRF waypoints failed (r19852)
- Fix: Ensure that both texts of the NewGRF gui download button fit (r19823)
- Fix: Kicking clients by IP did not work [FS#3784] (r19818)
- Fix: Compilation with MinGW GCC 4.5.0 and UNICODE (r19787)
- Fix: If a waypoint is immediately followed by a path signal a reservation would be made from that path signal before the waypoint is marked passed. As a result the order to go to the waypoint is used to reserve the path after the waypoint and as such trains get lost [FS#3770] (r19784)
- Fix: NULL pointer deference when testing relative scope *action2 on an unbuilt engine [FS#3828] (r19782)
- Fix: Crash on too long paths [FS#3807] (r19780, r19779, r19778, r19777, r19776)
- Fix: MP_VOID tiles shall have no tropic zone [FS#3820] (r19769)
- Fix: Half-desert tiles would never revert back to clear tiles (r19768)
- Fix: Height in smallmap was different from measured heights [FS#3808] (r19767)
- Fix: [NewGRF] Vehicle var 43 missed AI information in purchase list (r19761)
- Fix: Blocked roadvehicles should first check whether they are still blocked before accelerating again, instead of continuous starting/stopping (r19755)
- Fix: Try harder to find a suitable font that can be loaded, i.e. while searching for a suitable font test whether you can open it [FS#3740] (r19753)
- Fix: Make sure the chat area fits in the default window size; if you want it larger, you can always change/override it in the config file [FS#3798] (r19751)
- Fix: [NewGRF] Industry var 0x43 is not 'safe' during callbacks 22 and 38 either (r19750)
- Fix: [NewGRF] Possible divide-by-zero if a NewGRF checked industry var 42 while the production level was 0 (r19749)
- Fix: Do not recenter usually centered windows when resizing main window or changing language, if they have been moved/resized before [FS#3675] (r19746)
- Fix: The GUI is controlled by _local_company, not _current_company (r19745)
- Fix: NewGRFs could access map bits of not yet constructed industries and houses during construction callbacks (r19748, r19743)
- Fix: [NewGRF] Passing some invalid data to industry variable 67/68 could cause a crash (r19713)
- Fix: Check for industry availability more thoroughly and cancel object placement when selecting not available industries [FS#3787] (r19701)
- Fix: Avoid showing building toolbars behind the main toolbar when the 'Link landscape toolbar' setting is active [FS#3781] (r19696)
- Fix: Under some circumstances the player's name could be empty (r19693)
- Fix: Do not show an error message when trying to give another client an amount of 0 money [FS#3779] (r19684)
- Fix: Do not display an error message when double clicking on a vehicle in the 'available vehicles'-window (r19669)
- Change: Name invalid engines, cargos and industries 'invalid', if the player removed the supplying NewGRFs, hide invalid engines from the purchase list (r19879, r19877)
1.0.1 (2010-05-01) 1.0.1 (2010-05-01)
------------------------------------------------------------------------ ------------------------------------------------------------------------
- Fix: Crash when using restart via rcon (r19722) - Fix: Crash when using restart via rcon (r19722)

View File

@ -34,6 +34,8 @@ that you can find at: http://bugs.openttd.org
If the bugs are closed but still listed here it means that the bug is fixed If the bugs are closed but still listed here it means that the bug is fixed
and that the nightlies and next major release will not have that bug. and that the nightlies and next major release will not have that bug.
- 3816 Console text does not always fit at 640x480
- 3746 Console output with right-to-left texts in left-to-right texts is not correct
- 3714 Some corrupted savegames can cause crashes - 3714 Some corrupted savegames can cause crashes
- 3695 Behaviour inconsistency building railway/road down towards water - 3695 Behaviour inconsistency building railway/road down towards water
- 3651 [OSX] Crash when selecting full screen - 3651 [OSX] Crash when selecting full screen

View File

@ -1,3 +1,9 @@
openttd (1.0.2~rc1-0) unstable; urgency=low
* New upstream release 1.0.2-RC1
-- Matthijs Kooijman <matthijs@stdin.nl> Sat, 05 Jun 2010 23:36:21 +0000
openttd (1.0.1-0) unstable; urgency=low openttd (1.0.1-0) unstable; urgency=low
* New upstream release 1.0.1 * New upstream release 1.0.1

View File

@ -1,6 +1,6 @@
@echo off @echo off
set OPENTTD_VERSION=1.0.1 set OPENTTD_VERSION=1.0.2
set OPENSFX_VERSION=0.8.0 set OPENSFX_VERSION=0.8.0
set NOSOUND_VERSION=0.8.0 set NOSOUND_VERSION=0.8.0
set OPENGFX_VERSION=0.7.0 set OPENGFX_VERSION=0.7.0

View File

@ -1,9 +1,9 @@
# Version numbers to update # Version numbers to update
!define APPV_MAJOR 1 !define APPV_MAJOR 1
!define APPV_MINOR 0 !define APPV_MINOR 0
!define APPV_MAINT 1 !define APPV_MAINT 2
!define APPV_BUILD 2 !define APPV_BUILD 0
!define APPV_EXTRA "" !define APPV_EXTRA "-RC1"
!define APPNAME "OpenTTD" ; Define application name !define APPNAME "OpenTTD" ; Define application name
!define APPVERSION "${APPV_MAJOR}.${APPV_MINOR}.${APPV_MAINT}${APPV_EXTRA}" ; Define application version !define APPVERSION "${APPV_MAJOR}.${APPV_MINOR}.${APPV_MAINT}${APPV_EXTRA}" ; Define application version

View File

@ -178,7 +178,6 @@ static void _GenerateWorld(void *)
if (_network_dedicated) DEBUG(net, 0, "Map generated, starting game"); if (_network_dedicated) DEBUG(net, 0, "Map generated, starting game");
DEBUG(desync, 1, "new_map: %08x", _settings_game.game_creation.generation_seed); DEBUG(desync, 1, "new_map: %08x", _settings_game.game_creation.generation_seed);
if (_settings_client.gui.pause_on_newgame && _game_mode == GM_NORMAL) DoCommandP(0, PM_PAUSED_NORMAL, 1, CMD_PAUSE);
if (_debug_desync_level > 0) { if (_debug_desync_level > 0) {
char name[MAX_PATH]; char name[MAX_PATH];
snprintf(name, lengthof(name), "dmp_cmds_%08x_%08x.sav", _settings_game.game_creation.generation_seed, _date); snprintf(name, lengthof(name), "dmp_cmds_%08x_%08x.sav", _settings_game.game_creation.generation_seed, _date);

View File

@ -131,6 +131,9 @@ static uint32 GetCountAndDistanceOfClosestInstance(byte param_setID, byte layout
break; break;
} }
/* If the industry type is invalid, there is none and the closest is far away. */
if (ind_index >= NUM_INDUSTRYTYPES) return 0 | 0xFFFF;
if (layout_filter == 0) { if (layout_filter == 0) {
/* If the filter is 0, it could be because none was specified as well as being really a 0. /* If the filter is 0, it could be because none was specified as well as being really a 0.
* In either case, just do the regular var67 */ * In either case, just do the regular var67 */

View File

@ -824,6 +824,8 @@ static void MakeNewGameDone()
} }
#endif /* ENABLE_NETWORK */ #endif /* ENABLE_NETWORK */
if (_settings_client.gui.pause_on_newgame) DoCommandP(0, PM_PAUSED_NORMAL, 1, CMD_PAUSE);
MarkWholeScreenDirty(); MarkWholeScreenDirty();
} }

View File

@ -1569,13 +1569,18 @@ static bool RoadVehController(RoadVehicle *v)
int j = RoadVehAccelerate(v); int j = RoadVehAccelerate(v);
int adv_spd = (v->direction & 1) ? 192 : 256; int adv_spd = (v->direction & 1) ? 192 : 256;
bool blocked = false;
while (j >= adv_spd) { while (j >= adv_spd) {
j -= adv_spd; j -= adv_spd;
RoadVehicle *u = v; RoadVehicle *u = v;
for (RoadVehicle *prev = NULL; u != NULL; prev = u, u = u->Next()) { for (RoadVehicle *prev = NULL; u != NULL; prev = u, u = u->Next()) {
if (!IndividualRoadVehicleController(u, prev)) break; if (!IndividualRoadVehicleController(u, prev)) {
blocked = true;
break;
}
} }
if (blocked) break;
/* 192 spd used for going straight, 256 for going diagonally. */ /* 192 spd used for going straight, 256 for going diagonally. */
adv_spd = (v->direction & 1) ? 192 : 256; adv_spd = (v->direction & 1) ? 192 : 256;
@ -1590,7 +1595,10 @@ static bool RoadVehController(RoadVehicle *v)
u->UpdateViewport(false, false); u->UpdateViewport(false, false);
} }
if (v->progress == 0) v->progress = j; /* If movement is blocked, set 'progress' to its maximum, so the roadvehicle does
* not accelerate again before it can actually move. I.e. make sure it tries to advance again
* on next tick to discover whether it is still blocked. */
if (v->progress == 0) v->progress = blocked ? adv_spd - 1 : j;
return true; return true;
} }