Commit Graph

46744 Commits

Author SHA1 Message Date
Jonathan G Rennison
b5dea7f236 Fix undefined behaviour in Vehicle destructor 2018-06-06 18:38:18 +01:00
Jonathan G Rennison
e1fb35b16f Fix undefined behaviour when left-shifting negative values by casting to unsigned
This silences warning spam from UndefinedBehaviorSanitizer.
2018-06-06 18:25:45 +01:00
Jonathan G Rennison
6573a67b69 Change window allocation/destruction to avoid undefined behaviour
Create a new window base class which holds the front/back pointers
and the window class.
This fixes the voluminous warning spam about deleted windows when using
UndefinedBehaviorSanitizer.
2018-06-06 18:14:51 +01:00
Jonathan G Rennison
d8ab61cab3 Change type of track bits mask in MaskWireBits
This is to fix warnings from UndefinedBehaviorSanitizer.
2018-06-06 08:28:50 +01:00
Jonathan G Rennison
18d00ff47e Avoid using memcpy from null pointer in TooltipsWindow constructor 2018-06-06 08:22:58 +01:00
Jonathan G Rennison
c36c5ac851 Tag NewGRF unaligned memory load in StationChangeInfo 2018-06-06 08:22:33 +01:00
Jonathan G Rennison
8f7e9d70ca Fix wrong type used for rail usage stats array in SetDefaultRailGui
This fixes runtime warnings reported by UndefinedBehaviorSanitizer.
2018-06-06 08:17:56 +01:00
Jonathan G Rennison
fd4d9591c1 Merge branch 'save_ext' into jgrpp 2018-06-06 01:56:07 +01:00
Jonathan G Rennison
616cbf580a Use unaligned typedefs in unaligned save/load accessors 2018-06-06 01:55:51 +01:00
Jonathan G Rennison
f05ca1ba91 Merge branch 'cpp-11' into save_ext 2018-06-06 01:55:09 +01:00
Jonathan G Rennison
183a5cb114 Add unaligned uint 16, 32, 64 typedefs 2018-06-06 01:54:37 +01:00
Jonathan G Rennison
6862343eb3 Fix wrong type cast in Apple BSWAP64 macro 2018-06-06 01:38:05 +01:00
Jonathan G Rennison
58ccafbf1d Debug: Add vehicle_flags and cargo_payment to veh flags dump 2018-06-05 19:28:04 +01:00
Jonathan G Rennison
a8cfc9fe90 Debug: Add vehicle index and flag dump to NewGRF debug window 2018-06-05 19:09:03 +01:00
Jonathan G Rennison
943f4fdabb Debug: Add train and RV flags to scope info dump
Move flag dumping to separate function
2018-06-05 18:54:59 +01:00
Jonathan G Rennison
d2d8a86814 Add setting: station rating waiting time tolerance depends on cargo class 2018-06-04 20:43:05 +01:00
Jonathan G Rennison
7ef881883d Version: Committing version data for tag: jgrpp-0.25.0 2018-06-04 02:38:16 +01:00
Jonathan G Rennison
534f23d1b7 Fix through load with multi-head engines 2018-06-02 10:15:33 +01:00
Jonathan G Rennison
016f0bdfaf Through load: Fix getting and checking station veh/tile when leaving station 2018-06-02 00:34:30 +01:00
Jonathan G Rennison
40c7ccd6e6 Merge branch 'enhanced_viewport_overlay' into jgrpp
# Conflicts:
#	src/saveload/extended_ver_sl.cpp
2018-06-02 00:11:23 +01:00
Jonathan G Rennison
9376dc7089 Change viewport plan save format
The previous format stored sparse keys in a non-sparse array chunk,
which resulted in a significant savegame size penalty.
2018-06-02 00:10:36 +01:00
Jonathan G Rennison
03b0931c57 Merge branch 'save_ext' into jgrpp
# Conflicts:
#	src/debug.cpp
#	src/saveload/saveload.cpp
2018-06-01 23:32:33 +01:00
Jonathan G Rennison
decd749d30 Merge branch 'master' into save_ext 2018-06-01 23:25:12 +01:00
Jonathan G Rennison
51e9cc6695 Log save/load chunk sizes at sl debug level 3 2018-06-01 23:24:30 +01:00
cirdan
c06c929771 Remove unused ChunkType flag CH_AUTO_LENGTH
CH_AUTO_LENGTH is no longer used anywhere, so remove all code
that depends on it.

(cherry picked from commit 9c620d9de5d45b78f7d992d6b3897009fe988d86)
(cherry picked from commit 4a19babf9e)
2018-06-01 23:23:57 +01:00
cirdan
4134b81af0 Remove save-only autolength flag from economy chunk handlers
CH_AUTO_LENGTH is only used when saving chunks; it makes no sense
to set it for chunks without a save handler.

(cherry picked from commit 8b2fe11d8491fb5f3b9bd7dd5344a0956817e41c)
(cherry picked from commit ec157b4a66)
2018-06-01 23:23:10 +01:00
Jonathan G Rennison
4007338280 Clear VF_CARGO_UNLOADING flag from vehicles with no cargo_payment
Bump train_through_load savegame version
2018-06-01 20:05:53 +01:00
Jonathan G Rennison
5609394b4e Through load: Fix handling of full-load orders 2018-06-01 19:58:00 +01:00
Jonathan G Rennison
ec8ad55bb5 Clear all VF_CARGO_UNLOADING flags when leaving station 2018-06-01 19:33:17 +01:00
Jonathan G Rennison
777151c34d Station rating: Track last visited vehicle type separately per-cargo 2018-06-01 19:12:53 +01:00
Jonathan G Rennison
41c1a396ed Changes to fix issues with cargo payment handling in through load 2018-05-31 23:05:04 +01:00
Jonathan G Rennison
a33153979e Add scope info logging to LoadUnloadVehicle 2018-05-31 23:05:04 +01:00
Jonathan G Rennison
4aa211e454 Merge branch 'crashlog_improvements' into jgrpp 2018-05-31 23:04:47 +01:00
Jonathan G Rennison
bb8c18b017 Add scope info logging to LoadUnloadStation 2018-05-31 23:04:24 +01:00
Jonathan G Rennison
faf4cdc0f4 Scope info: Add station/waypoint info dumper 2018-05-31 18:36:12 +01:00
Jonathan G Rennison
f2072319cb Add autosave_on_network_disconnect setting to GUI 2018-05-30 08:36:48 +01:00
Jonathan G Rennison
7559db2bbb Merge remote-tracking branch 'nielsmh/bug986' into jgrpp 2018-05-30 08:19:22 +01:00
Jonathan G Rennison
d0daffe312 Linkgraph overlay: Ensure line/dot draw order is same in incremental mode
Ensure that sort order is maintained
2018-05-29 19:07:22 +01:00
Alexander Weiss
2406500140 Fix: [OSX] Minor 2D scrolling fixes (#6793)
* Codechange: Check for scrollwheel_scrolling first when scrolling viewport instead of first setting normal values and then overwriting them.

* Fix #6558: [OSX] Reset 2D scrolling values when not scrolling to prevent unintended window focus changes

* Change: [OSX] Include initial scrolling movement when using 2D scrolling to make it more responsive

* Fix: [OSX] 2D scrolling not working when setting viewport scroll behaviour to use left mouse button
2018-05-29 09:44:33 +01:00
Jonathan G Rennison
e6e93d40e8 Station flow stat save/load performance improvement
Avoid use of SlObject in inner loop
2018-05-29 00:53:25 +01:00
Jonathan G Rennison
6187517429 Add whole-map savegame chunk
This is to avoid haveing to do many passes to save/load map
2018-05-29 00:24:27 +01:00
Jonathan G Rennison
159909f4b1 Merge branch 'save_ext' into jgrpp
# Conflicts:
#	src/saveload/saveload.cpp
2018-05-29 12:23:56 +01:00
Jonathan G Rennison
aae7806d5d Move save/load ReadBuffer and MemoryDumper to separate header
Add static accessors
2018-05-29 00:21:39 +01:00
Jonathan G Rennison
bbec436a74 Change SlAutolength to only call proc once 2018-05-29 00:16:53 +01:00
innocenat
7c4bd7d3a3 Add variable std::vector save type
SL_VEC in the game currenty only support SlRefType, not VarType. This add another save type, SL_VARVEC, to support saving std::vector with POD type. It supports all integer type.
(cherry picked from commit 2895b1921d)

Fix bug in new SL_VARVEC save/load code

(cherry picked from commit 59554a5dd2)
2018-05-29 00:16:53 +01:00
Jonathan G Rennison
c71ed22e7a Save/memory dumper performance improvements 2018-05-29 00:16:53 +01:00
Jonathan G Rennison
3b83a9e186 Performance improvements to savegame loading 2018-05-29 00:16:53 +01:00
Jonathan G Rennison
8404afd40f Merge branch 'cpp-11' into save_ext 2018-05-29 00:15:50 +01:00
Jonathan G Rennison
9ca4e915ba Add 64 bit byte swapping function 2018-05-28 02:20:30 +01:00
Jonathan G Rennison
641e877441 Change grfmsg to be a macro which checks the debug level first
This is to avoid doing a sprintf when the result will be thrown away
2018-05-27 22:28:07 +01:00