Commit Graph
100 Commits
Author SHA1 Message Date
KUDr 5eb4036eb2 (svn r10713) -Cleanup (r10711): too long string buffers, unsafe sprintf used (Darkvater) 2007-07-27 23:49:48 +00:00
KUDr 51b26f96d2 (svn r10712) -Fix (r10711): \0 at the end of string constant (glx) 2007-07-27 22:32:48 +00:00
KUDr f9411f30c4 (svn r10711) -Fix [Win32]: take default language from current user's locale on Windows (In-) 2007-07-27 22:19:19 +00:00
KUDr d3c20d65bd (svn r10647) -Fix: AutoPtrT::operator =() didn't delete old object 2007-07-21 14:01:12 +00:00
KUDr 43ddd64817 (svn r10646) -Cleanup: AutoPtrT<>::Release() renamed to Detach()
-better describes what it does
 -was inconsistent with CCountedPtr<>::Release()
2007-07-21 13:45:15 +00:00
KUDr af39f3a084 (svn r10645) -Fix (r10644): file contents seems to be 3x there 2007-07-21 12:39:46 +00:00
KUDr d71d48434d (svn r10578) -Fix [YAPF, ships]: Ships received curve penalty for non-diagonal straight move. (JazzyJaffa)
-The fix in cost calculation uncovered bug in estimate calculation. Ships now use the same estimate algorithm as trains.
2007-07-15 11:45:38 +00:00
KUDr 0452fc482d (svn r10492) -Fix [YAPF, r10491]: commands with no effect (glx) 2007-07-09 19:24:45 +00:00
KUDr 3efc078e2f (svn r10491) -Fix [FS#988, YAPF]: When rail segment was cached using electric engine and it ended with non-electric rail it was incorrectly cached with the end reason ESRB_DEAD_END instead of ESRB_RAIL_TYPE. (Eddi)
- It caused YAPF to end prematurely there when it was searching for another path (for non-electric engine).
 - It can lead to sub-optimal path taken or 'train is lost' message.
 - In MP game it can also cause desync.
 - Uses changes made in r10489.
2007-07-09 18:57:12 +00:00
KUDr d3c7a7fa8c (svn r10489) -Codechange [YAPF]: FollowTrack_t now has new data member - m_err. It indicates the reason why the given track/trackdir can't be followed when method CFollowTrackT<>::Follow() returned false. 2007-07-09 18:27:42 +00:00
KUDr c4aff8b0a4 (svn r10445) -Fix (Win32, r10444): remove #include "hal.h" 2007-07-05 12:30:22 +00:00
KUDr 415d5af03d (svn r10429) -Fix: VC8 Code Analyzer warning: buffer overrun 2007-07-04 02:41:39 +00:00
KUDr 255389a963 (svn r10428) -Fix: some more VC code analyzer warnings disabled 2007-07-04 02:37:48 +00:00
KUDr 1d5b84d808 (svn r10427) -Fix: snprintf behaves differently in gcc than in VC causing unreadable artifacts in output. Now CStrT::AddFormatL() should behave correctly also when compiled by gcc (Rubidium) 2007-07-04 02:35:40 +00:00
KUDr dd697570e5 (svn r10423) -Fix [YAPF, r10301]: INVALID_TRACKDIR causing buffer overrun leading to desync in MP game (many thanks Rubidium) 2007-07-04 00:12:02 +00:00
KUDr 232cfb0fc1 (svn r10422) -Fix: VC8 Code Analyzer warning C6297: Arithmetic overflow: 32-bit value is shifted, then cast to 64-bit value. Results might not be an expected value 2007-07-03 23:23:38 +00:00
KUDr 7dc5d11448 (svn r10421) -Fix [MSVC]: suppress some code analyzer warnings for VC8 2007-07-03 23:08:51 +00:00
KUDr 6878ca0213 (svn r10420) -Fix [MSVC]: Disabled 'Treat Warnings As Errors' for VC8 2007-07-03 23:07:33 +00:00
KUDr f9cac3c71b (svn r10395) -Fix [YAPF]: missing include + some signed/unsigned comparison warnings 2007-06-30 00:17:07 +00:00
KUDr cbbee4da48 (svn r10394) -Fix [YAPF]: MP desync caused by incorrect last-red-signal penalties applied when cached segment was reused. Players that connected more recently (didn't have these segments cached yet) calculated those penalties correctly. This caused different YAPF results. 2007-06-29 23:55:16 +00:00
KUDr 09ef044f9d (svn r10393) -Fix [YAPF]: Trackdir needs 4 bits to store (not 3). The cached segment key didn't use the highest trackdir bit. It could confuse YAPF on bi-directional track segments. 2007-06-29 23:50:42 +00:00
KUDr c37dc87ad2 (svn r10392) -Add [YAPF]: added structured dump support into some essential YAPF classes (node-list, nodes, keys, etc.) and CArrayT 2007-06-29 23:45:13 +00:00
KUDr a88a1b6f53 (svn r10391) -Add: debug support - structured dump of variables/classes/structures (with anti-recursion repository) into string 2007-06-29 23:30:14 +00:00
KUDr 622235d8cd (svn r10390) -Fix: constness 2007-06-29 22:39:50 +00:00
KUDr 91d6051adb (svn r10389) -Add: CStrA, CStrCiA, CStrW, CStrCiW - case sensitive/insensitive ANSI/UNICODE string classes that support formatted (sprintf like) output. 2007-06-29 22:33:58 +00:00
KUDr 3269660c4f (svn r10388) -Cleanup: coding style (CBlobT & CBlobBaseSimple), removed CStrA 2007-06-29 22:16:15 +00:00
KUDr 15bf8e1e58 (svn r10366) -Codechange [YAPF]: added DEBUG_YAPF_CACHE macro that (when set to 1) allows to track YAPF "cache errors". They are probably responsible for current MP desyncs. (thanks Rubidium for this great idea!).
I will deal with those errors/desyncs tomorrow.
2007-06-27 22:29:57 +00:00
KUDr 5b8e48f555 (svn r10349) -Fix [FS#941, YAPF, r10301]: tile/trackdir must be used as node key and also as segment key in the cache (SmatZ).
In the past it was possible to use tile/exitdir as the key because segments beginning on the same tile/exitdir were incorrectly considered the same. What I still don't understand is why this bug happened only on 64 bit systems (linux, Win64).
2007-06-26 22:29:52 +00:00
KUDr 59090c53d8 (svn r10304) -Fix [YAPF](r10301): removed assert which could violate without danger when searching for the nearest depot. From now on the segment can be closed without reason in that case (peter1138) 2007-06-24 14:40:54 +00:00
KUDr ac9fb1c34e (svn r10303) -Fix [YAPF](r10301): warning: unused variable tile_cost (peter1138) 2007-06-24 13:30:03 +00:00
KUDr a7d5363e65 (svn r10302) -Fix [YAPF, MP]: now (with r10301) it is no longer needed to invalidate the YAPF segment cache every tick in MP. Segment cost now doesn't contain the curves between segments. As a result the cache should be now accurate. 2007-06-24 13:22:41 +00:00
KUDr ef4c335cb4 (svn r10301) -Fix [FS#901, YAPF]: another assert violation in some special cases (immeR) 2007-06-24 13:18:54 +00:00
KUDr 6ced6f8f5f (svn r10292) -Fix: suppress VC 7.1 warning: "\src\texteff.cpp(251) : warning C4258: 'y' : definition from the for loop is ignored; the definition from the enclosing scope is used" which prevents compilation on MSVC 2003 2007-06-23 09:04:07 +00:00
KUDr fad2a36b8f (svn r10199) -Fix [FS#884, YAPF]: 'target_seen' flag that is set prematurely in some cases (1 tile long cached segment followed by target station) stops on assert (immeR) 2007-06-18 14:40:07 +00:00
KUDr bf04c88eca (svn r9746) -Codechange [YAPF]: added DEBUGs level 0 if the current train order is OT_GOTO_WAYPOINT and waypoint is invalid or v->dest_tile is wrong 2007-04-29 10:14:42 +00:00
KUDr 027597f485 (svn r9745) -Codechange [YAPF}: if destination is a waypoint then YAPF gets destination tile from that waypoint->xy instead of from v->dest_tile 2007-04-29 09:55:32 +00:00
KUDr d0de381c30 (svn r9697) -Fix [YAPF](r9694): 'unused variable' warning (glx) 2007-04-20 19:43:06 +00:00
KUDr 3df2656633 (svn r9694) -Fix [YAPF][FS#736]: the guessed path (when PF stopped on max. # of nodes passed) was ignored for ships (desolator) 2007-04-20 19:19:23 +00:00
KUDr 4728765870 (svn r9693) -Codechange [YAPF]: GetBestNode() now returns pointer to node instead of reference 2007-04-20 19:13:35 +00:00
KUDr c7bcdb69b1 (svn r9146) -Fix [NTP][FS#676](r6800): "Train is lost" message is generated incorrectly. Forgot to set the best bird distance to zero in case we found the destination to indicate success. (de_zeurkous) 2007-03-13 21:04:22 +00:00
KUDr 00bc893312 (svn r9104) -Fix(r9080, r9081): UINT32_MAX is undefined on MSVC, std::numeric_limits doesn't exist in gcc 2.95 (MorphOS), so back to tree and use ~0 instead (peter1138) 2007-03-10 20:05:31 +00:00
KUDr 933c406678 (svn r9081) -Fix(r9080): UINT32_MAX is undefined on MSVC. Use std::numeric_limits<uint32>::max() instead. 2007-03-09 23:26:21 +00:00
KUDr fbd6a88d02 (svn r8933) -Fix [Win64]: rdtsc now uses intrinsic on VC8 (michi_cc) 2007-02-27 23:12:45 +00:00
KUDr b3822a22d9 (svn r8887) -Fix (r8879)[MorphOS]: initialization of mouth_table[] skipped by goto 2007-02-24 19:43:50 +00:00
KUDr 029ceda0f1 (svn r8869) [YAPF] -Fix: Large Train Stations/Trains makes OpenTTD crash (Jigsaw_Psyche) 2007-02-24 00:17:46 +00:00
KUDr 9cdf6fdc7e (svn r8867) -Fix(r8866): revert yapf_costrail.hpp commited by mistake, helpers.hpp had wrong line ending 2007-02-23 21:36:43 +00:00
KUDr f3d5fda36c (svn r8866) -Doc: added more comments to template struct MakeEnumPropsT 2007-02-23 21:29:50 +00:00
KUDr dac3cd622f (svn r8864) -Codechange: make ClrBitT(), SetBitT() and ToggleBitT more like CLRBIT() and so on (modify value of the first parameter instead or returning the result) 2007-02-23 20:51:10 +00:00
KUDr f24122ba3d (svn r8836) [YAPF] -Fix[FS#641]: Assertion: 'IsTileDepotType(depot_tile, TRANSPORT_ROAD)' failed (Karsten)
-don't tell that we found destination if the best direction was only guessed
2007-02-21 21:56:07 +00:00
KUDr fe1d448cf8 (svn r8768) -Fix (r8767): VC8 compilation failed 'warning C4146: unary minus operator applied to unsigned type, result still unsigned' 2007-02-17 10:21:48 +00:00
KUDr ee0739561d (svn r8766) -Fix[YAPF]: rail station platform penalty not calculated properly 2007-02-17 00:18:11 +00:00
KUDr ef8c8952b1 (svn r8751) -Fix [lang]: deleted .news and .subs strings causing lang compilation error 2007-02-15 22:00:17 +00:00
KUDr 72cdfb6352 (svn r8750) -Fix (r8747): PLANES defined in wingdi.h caused compilation error under Win32. Changed to AIRPLANES 2007-02-15 22:00:04 +00:00
KUDr f801a5c04f (svn r8613) -Fix [MorphOS]: offsetof() macro undefined for MorphOS build 2007-02-06 19:16:38 +00:00
KUDr ccffde6d7e (svn r8576) -Fix: wrong type given to MallocT (VC2003, UNICODE build) 2007-02-04 11:33:02 +00:00
KUDr 62486a73ed (svn r8574) -Fix: Silence VC2003 warning: "compiler limit : terminating debug information emission for enum 'StringIdEnum'" 2007-02-04 11:30:22 +00:00
KUDr e66028538a (svn r8540) -Fix[YAPF]: Assert when buoy is placed on NE or NW map edge (Dan) 2007-02-02 20:20:56 +00:00
KUDr f5d74b8af6 (svn r8482) -Revert (r8480): let others to do it properly 2007-01-31 10:27:45 +00:00
KUDr a5198858d8 (svn r8480) -Fix [lang]: Error caused by missing case 2007-01-31 09:54:35 +00:00
KUDr f9462a50e9 (svn r8479) -Fix (r8459): Silenced VC warning C4099: 'Packet' : type name first seen using 'class' now seen using 'struct'
-Codechange: 'typedef struct Packet' changed to 'struct Packet'
2007-01-31 09:51:22 +00:00
KUDr 201ba1f5c3 (svn r8414) -Codechange: Use own AutoPtrT instead of std::auto_ptr.
-Simplifies assignment from raw pointers
 -Should be harder to crash the program by incorrect assignment into it.
 -Should help with MorphOS compilation errors
2007-01-26 11:38:07 +00:00
KUDr 29a332e829 (svn r8413) -Fix [MORPHOS]: disable #define offsetof conflict on Morphos (seems that g++ 2.95 defines it anyway) 2007-01-26 08:37:48 +00:00
KUDr 8c5f64ae56 (svn r8284) -Fix (r8277): g++ compilation error: missing brackets in sizeof 2007-01-19 22:41:50 +00:00
KUDr 7b5ec98d99 (svn r8277) -Fix (r8038): assert on game exit when waypoints were used. The static variable of type Station (inside ComposeWaypointStation) replaced by byte array so no destructor is called for it on exit. 2007-01-19 16:01:43 +00:00
KUDr 314e35beff (svn r8273) -Fix: return value from clamp was ignored 2007-01-18 23:48:04 +00:00
KUDr 6230f9b922 (svn r8272) -Fix (r8038): signed/unsigned change - PlayerID is now enum (signed) and was byte so test for PlayerID validity needed to be updated (Darkvater) 2007-01-18 23:45:58 +00:00
KUDr 147ca22060 (svn r8231) -Fix (r8125): MP desync caused by calling Random() from station constructor. This was wrong because station constructor is called also when loading savegame and when player tries to build station when it is not sure that it will succeed (thanks Rubidium) 2007-01-18 09:34:44 +00:00
KUDr fd383668f8 (svn r8139) -Cleanup: simplify auto_ptr initialization (Tron) 2007-01-14 23:43:59 +00:00
KUDr 278cf974a4 (svn r8138) -Cleanup: comment style corrections 2007-01-14 23:36:25 +00:00
KUDr cd74706c54 (svn r8136) -Codechange: Station spread rectangle manipulators turned into StationRect::methods. 2007-01-14 23:02:12 +00:00
KUDr f8a434e9fc (svn r8131) -Fix (r8125): g++ warning: 'invalid access to non-static data member ‘<class>::<member>’ of NULL object'. It is weird, but renaming the 'offsetof' macro helped. 2007-01-14 21:03:21 +00:00
KUDr 19d31c7417 (svn r8127) -Fix (r8125): removed redundant free() call which is also in Station destructor (Tron) 2007-01-14 19:44:27 +00:00
KUDr 1eac31a1d8 (svn r8126) -Fix (r8125): missing #include fixes compilation error on g++ (still some warnings, working on it) 2007-01-14 19:29:21 +00:00
KUDr 8b65342449 (svn r8125) -Codechange: Station is now constructed/destroyed using new/delete operators (don't worry, they still use the same memory pool). Few station related functions turned into Station::methods (just first step). All this new stuff moved from station_cmd.cpp to the new file (station.cpp). 2007-01-14 19:18:50 +00:00
KUDr d57b290474 (svn r8124) -Add [DEBUG]: _debug_station_level 2007-01-14 19:13:36 +00:00
KUDr 04d2d80891 (svn r8122) -Fix[LANG]: terror in czech lang file (again) 2007-01-14 18:57:39 +00:00
KUDr 96ea43d1b2 (svn r8117) -Fix (r8114): 'no matching operator delete found' warning on VC8 2007-01-14 13:21:02 +00:00
KUDr 9bfb3f08d9 (svn r8110) -Codechange: direct Vehicle::current_order.type changes (to OT_LOADING and OT_LEAVESTATION) replaced by v->BeginLoading() and v->LeaveStation() calls. This should allow easy hooking of those state transitions in order to maintain vehicle loading queue. 2007-01-13 18:55:54 +00:00
KUDr ae41162322 (svn r8104) -Fix: missing helpers.hpp added into source.list and VC 2007-01-13 16:23:24 +00:00
KUDr 64c30ae737 (svn r8100) -Propchange: EOL style changed to LF for /projects/generate 2007-01-13 15:24:31 +00:00
KUDr 0108e5f85c (svn r8099) -Fix (r8092): source.list updated to reflect move of header files (thanks stillunknown). vcproj files updated too (thanks glx) 2007-01-13 15:22:36 +00:00
KUDr 0edc029f9f (svn r8095) -Codechange: stuff that is not related to HAL moved from hal.h to gfx.h 2007-01-13 14:43:46 +00:00
KUDr f2e5e604fb (svn r8092) -Codechange: header files with miscellaneous template classes (smart pointers, blob, array, hashtable, etc.) moved from src/yapf to src/misc as they can now be used anywhere. 2007-01-13 13:33:36 +00:00
KUDr 38a9d09214 (svn r8091) -Propchange: EOL style changed to LF for config.lib (fixes ./configure errors when sharing WC between linux and windows) 2007-01-13 13:23:56 +00:00
KUDr e896d7814a (svn r8079) -Fix [YAPF]: float division by zero when calculating stats (YAPF cache hit ratio). Caused BSOD on Win9x. (thanks 3iff for report, Darkvater for help) 2007-01-12 15:43:00 +00:00
KUDr 33be1ecfb1 (svn r8066) - Codechange: MallocT(), CallocT(), ReallocT() now return the pointer to allocated memory instead of modifying the pointer given as parameter 2007-01-11 17:29:39 +00:00
KUDr dbe11fb9c7 (svn r8052) - Codechange: RemoveFirstTrack() and RemoveFirstTrackdir() now accept pointer to TrackBits/TrackdirBits instead of reference. 2007-01-11 10:34:42 +00:00
KUDr e373ea7096 (svn r8033) [cpp] - Prepare for merge from branches/cpp (all .c files renamed to .cpp) 2007-01-10 18:12:09 +00:00
KUDr db02336ef1 (svn r7810) -Fix: FS#504 Building airport whose size exceeds max station spread-out caused assert. (Zuu) 2007-01-03 22:55:53 +00:00
KUDr af2a4cecde (svn r7628) -Fix: [YAPF] suppress 'Train is lost' message if pathfinding ended on the first two-way red signal due to yapf.rail_firstred_twoway_eol option. 2006-12-29 23:06:00 +00:00
KUDr 62f55edbe7 (svn r7623) - Fix: [YAPF] trains/roadvehs trying to enter the bridge ramp from under bridge rail/road (introduced by bridge merge r7573) 2006-12-29 18:40:02 +00:00
KUDr 0ca54b8ecf (svn r7620) -Fix: [OPF] signal update was incorrectly propagated:
- through incompatible rail types
 - from under bridge track to the bridge ramp (peter1138)
 - same for tunnels (from track on top of tunnel entry to the tunnel)
2006-12-29 17:51:16 +00:00
KUDr 78c503c020 (svn r7599) -Fix: (r7585, r7590) assert on load game that has some station with bigger spread-out than _patches.station_spread value (Celestar) 2006-12-28 17:45:31 +00:00
KUDr 02c07d2a86 (svn r7590) -Codechange: (r7585)
- use existing struct Rect instead of declaring new StationRect
 - use inline functions instead of macros
2006-12-28 11:52:12 +00:00
KUDr 69a43e5ade (svn r7585) -Codechange: CheckStationSpreadOut() took too much CPU. Station rectangle is now maintained instead of calculating it each time by walking through whole map. Should help with the performance issue related to AIs trying to build road stops too often. (idea by Celestar) 2006-12-27 23:11:43 +00:00
KUDr b07b38d873 (svn r7547) -Fix: The cost of rail station removal was calculated based on the area occupied by the station. This produced unreasonably large removal costs for non-uniform stations. Now it is based on number of station tiles actually removed. 2006-12-22 13:16:40 +00:00
KUDr 0bf22bdedf (svn r7519) -Fix: [YAPF] Cache was not deleted when waypoint was built or removed (frosch) 2006-12-20 23:41:24 +00:00
KUDr dc726fee75 (svn r7429) -Remove: [YAPF] yapf.txt no longer valid/needed 2006-12-07 21:30:18 +00:00
KUDr 07ad588487 (svn r7387) -Fix: czech lang file compilation error 2006-12-05 23:32:15 +00:00
KUDr 3f3a14d24b (svn r7329) -Fix (r7157): Invalid viewport position on quick zoom 2006-12-03 13:40:16 +00:00