Ben Lubar
e5c597f869
change two UNEXPECTEDs in check-structures-sanity to FAILs instead
2020-03-02 22:30:23 -06:00
Ben Lubar
7784e569a5
update structures
2020-03-02 22:29:53 -06:00
Ben Lubar
c29b606a4a
check-structures-sanity: suggest known structure types for large unknown pointers
...
update structures
2020-03-02 21:33:04 -06:00
Ben Lubar
269b3cb8eb
add support for finding vtable pointers to check-structures-sanity
...
update structures
2020-03-02 15:34:29 -06:00
Ben Lubar
0024457167
update structures
...
don't mark lua argument as a pointer (to be revisited at some point)
2020-03-02 02:27:15 -06:00
Ben Lubar
fe2ea17880
change DF version
...
add -maxerrors and -failfast to check-structures-sanity
2020-03-01 12:15:26 -06:00
Ben Lubar
0c007c4699
remove std::min usage
2020-03-01 00:18:09 -06:00
Ben Lubar
85bfa60cf2
allow -1 union values for undefined tags to avoid false positives
2020-02-29 21:57:39 -06:00
Ben Lubar
cc2c732dd5
insert a new second rule for tagged union discovery
...
1. if the field name ends in "data" and there is a field with the same
prefix ending in "type", the field ending in "type" is the tag.
2. if the field name ends in "_target" and the previous field has the
same prefix and no suffix, the previous field is the tag.
3. if the field is not the last field in the structure, the next field
is the tag.
2020-02-29 18:46:34 -06:00
Ben Lubar
b0699a1b5e
allow uninitialized data to be all zeroes
2020-02-29 18:36:00 -06:00
Ben Lubar
0860d81c86
add support for vectors of tagged unions in check-structures-sanity
2020-02-29 18:28:14 -06:00
Ben Lubar
18523a1821
Convert untagged unions to tagged. Fix some edge cases in check-structures-sanity union checking.
2020-02-29 15:08:39 -06:00
Ben Lubar
3240b6d897
check-structures-sanity improvements for unidentified fields and unions
...
- not being able to determine the tag for a union is now an error.
- pointer-sized unknown allocations will now be checked recursively as
if they were void pointers. this will help with identifying string
pointers on linux.
- unknown tagged union fields will be checked as void pointers if the
first identified field of the union is a pointer.
- tagged unions can now be of non-pointer types.
- tagged unions can now have complex tag enums.
2020-02-29 14:20:43 -06:00
Ben Lubar
a30678cee3
subclass struct_identity for unions
2020-02-29 13:11:23 -06:00
Pierre-David Belanger
97a31c68a8
dwarfvet log only if enabled ( fix #1504 )
2020-02-24 13:54:47 -05:00
Ben Lubar
e9564a28f5
allow tagged unions to not be union followed by tag
2020-02-23 21:33:32 -06:00
Ben Lubar
5580d375aa
add more diagnostics that will help in the identification of stl-string fields
2020-02-22 15:34:48 -06:00
Ben Lubar
37a8bf679e
fix copy/paste error
2020-02-22 14:10:26 -06:00
Ben Lubar
0711b2569a
in -sizes mode, report sizes of unknown structures behind pointers.
...
update structures
2020-02-22 14:04:53 -06:00
Ben Lubar
57154e33c8
warn about misidentified generic pointers
...
update structures
2020-02-21 18:49:02 -06:00
Ben Lubar
53da38ca47
add additional pointer, string, and vector sanity checks
...
update structures and scripts
2020-02-21 17:31:31 -06:00
Ben Lubar
f383f63eea
fix check-structures-sanity not catching certain types of invalid string on GCC builds.
...
update structures.
2020-02-21 17:31:31 -06:00
lethosor
81c304f7ee
Update stonesense, isoworld
2020-02-21 08:27:57 -05:00
Ben Lubar
38410544b0
handle tagged unions in check-structures-sanity
...
update structures
2020-02-20 22:17:25 -06:00
Ben Lubar
ee6b281ae3
allow check-structures-sanity to check the size of the value explicitly specified in a lua expression rather than just its descendants.
...
print an error if getting the type identity fails.
2020-02-19 11:40:31 -06:00
Ben Lubar
d149763c1e
fix yet another weird use of the part of speech enum
2020-02-18 16:41:39 -06:00
Ben Lubar
0d36e62d81
fix some weird uses of the part of speech enum
2020-02-18 16:39:39 -06:00
Ben Lubar
0f857f1b20
fix msvc warning about 64-bit shift
2020-02-15 18:20:34 -06:00
Ben Lubar
d0de7865d3
fix compile for gcc 4.8
2020-02-15 18:20:32 -06:00
Ben Lubar
631b8e772c
update structures; fix -lowmem being enabled due to being uninitialized on the stack.
2020-02-15 16:10:54 -06:00
PatrikLundell
8756667d99
cursecheck: Fix werecreature detection
...
Fixes #957
2020-02-15 17:09:18 -05:00
Ben Lubar
e4ff184280
check-structures-sanity: add -lowmem argument to use depth-first search instead of readth-first search
...
add progress indicator if called from the console
2020-02-15 12:54:04 -06:00
Ben Lubar
122169a559
update scripts and structures
...
fix a crash if check-structures-sanity was called with a lua expression that evaluated to nil
2020-02-15 12:04:00 -06:00
Ben Lubar
8e5f391d3a
attempt to fix lua calls in check-structures-sanity
2020-02-15 02:42:44 -06:00
Ben Lubar
9caf6e97e6
add -enums, -sizes, and specific starting point flags to check-structures-sanity
2020-02-14 19:47:26 -06:00
Ben Lubar
4e69b50bb3
fix use-after-free in memview
2020-02-14 17:38:31 -06:00
Ben Lubar
fec6f01520
Allow uninitialized raw pointers.
2020-02-13 19:55:49 -06:00
Ben Lubar
9c34e9e584
properly check fields of the full type heirarchy
2020-02-12 18:01:49 -06:00
Ben Lubar
24918e5513
check fields of actual virtual type, not just the declared one
2020-02-12 17:57:55 -06:00
Ben Lubar
40bd55c558
don't check bad pointers
2020-02-11 17:33:33 -06:00
Ben Lubar
195b933c61
ignore contents of elements of "bad" pointer vectors
2020-02-11 17:17:11 -06:00
Ben Lubar
62af2952b7
Fix check-structures-sanity mishandling vectors of pointers.
...
Also fix detecting structures that span multiple memory segments as being outside of memory.
2020-02-11 14:11:09 -06:00
Ben Lubar
3c9f6f79ab
fix some warnings
2020-02-10 19:35:17 -06:00
PatrikLundell
1a695621c3
Adjusted to int-> enum defs, fixed bug
2020-02-10 18:22:26 -06:00
Ben Lubar
8122b95144
fix signed integer being compared to an unsigned integer
2020-02-10 11:57:27 -06:00
Ben Lubar
05a49cbacb
fix a possible SIGABRT when misdetecting a vtable as being valid
...
add enum names enum-based indexes
2020-02-09 15:12:25 -06:00
Ben Lubar
e9dba1d6ca
fix crash when checking unknown vector types. also remove the warning when unknown vector types were not pointer-aligned
2020-02-09 14:25:48 -06:00
Ben Lubar
6b828115a7
rewrite check-structures-sanity to use breadth-first search and not overflow the stack
2020-02-09 14:16:19 -06:00
lethosor
f54c361718
Add an implementation of mifki's sizecheck library (tested on Linux)
2020-02-08 21:18:29 -05:00
Ben Lubar
359cc2275a
include the windows header rather than winnt
2020-02-05 21:47:25 -06:00
Ben Lubar
d494eb619d
fix Windows 64-bit compile for check-structures-sanity
...
fix some sprintf size_t-related warnings
2020-02-05 20:29:16 -06:00
Ben Lubar
860131cf96
fix Windows 32-bit compile for check-structures-sanity
2020-02-05 20:21:32 -06:00
Ben Lubar
d9abe02b2e
add support for DfArray in check-structures-sanity
2020-02-05 19:06:14 -06:00
Ben Lubar
d7d0923044
add string checking support to check-structures-sanity
...
try to avoid crashes on bad vtables
2020-02-05 18:52:35 -06:00
Ben Lubar
3d037db789
add a tool for sanity-checking structures on a running Dwarf Fortress instance.
2020-02-05 16:36:59 -06:00
Ben Lubar
5db7d518ee
update structures; fix some minor compile warnings
2020-02-05 12:35:43 -06:00
Ben Lubar
c4b01b53a3
add new building_type enum value to labormanager
2020-02-02 17:15:40 -06:00
lethosor
bcd7974561
Merge branch 'develop' of gh:DFHack/dfhack into develop
2020-01-18 22:31:33 -05:00
lethosor
815821eb93
Merge branch 'develop' into cmake-cleanup
...
Conflicts:
depends/lua/CMakeLists.txt
plugins/CMakeLists.txt
plugins/devel/CMakeLists.txt
2020-01-18 22:28:43 -05:00
lethosor
d4d083d8cf
autofarm: fix GCC warnings
2020-01-18 20:53:13 -05:00
lethosor
f55a1b9990
autofarm: mention runonce and status in built-in help
2020-01-18 18:52:17 -05:00
lethosor
dc8b8b501b
Move autofarm to supported plugins
...
PR #1468
2020-01-18 17:17:28 -05:00
lethosor
3e47ba543b
Merge remote-tracking branch 'ab9rf/autofarm-cpp' into develop
...
Ref #1468
2020-01-18 17:11:43 -05:00
lethosor
e5a5e39c3a
Move getplants issue details to user-facing docs
...
Ref #1479 , #1481
2020-01-18 16:34:29 -05:00
lethosor
72fd32cb2a
Tweak spelling/wording/style
2020-01-18 16:22:21 -05:00
lethosor
af1668126d
Merge remote-tracking branch 'PatrikLundell/getplants' into develop
2020-01-18 16:19:40 -05:00
PatrikLundell
eeacbc80c6
Explicit type conversion with %d warning silencing
2020-01-16 13:59:31 +01:00
PatrikLundell
ee2259bbca
Replaced poor auto with actual type
2020-01-16 12:57:09 +01:00
Ben Lubar
cbf5c5459a
Don't print an error about not being able to get the SDL title in text mode.
2020-01-15 16:07:41 -06:00
PatrikLundell
cd4b00e23e
Merge branch 'getplants' of https://github.com/PatrikLundell/dfhack into getplants
2020-01-15 21:30:56 +01:00
PatrikLundell
8cebb6cef5
removed trailing whitespace
2020-01-15 21:29:01 +01:00
PatrikLundell
7797f9979b
Merge branch 'develop' into getplants
2020-01-15 20:00:49 +01:00
PatrikLundell
8c049389a4
Reverted STOCKPILE_PLANT_GROWTH to LEAF_MAT
2020-01-15 19:31:19 +01:00
PatrikLundell
15e06640f6
Partial correction of issue 1479 and added verbose flag
2020-01-15 12:40:43 +01:00
lethosor
4feb0aa21f
Merge remote-tracking branch 'PatrikLundell/embark-assistant' into develop
2020-01-14 23:41:22 -05:00
lethosor
5eca50476e
Merge remote-tracking branch 'nornagon/unit-description' into develop
2020-01-13 23:31:23 -05:00
Jeremy Apthorp
50e696acf6
getDescription => getPhysicalDescription
2019-12-14 09:36:47 -08:00
Jeremy Apthorp
910f965838
wip
2019-12-07 22:17:59 -08:00
Ben Lubar
23b56c4492
Fix "kittens" development plugin not building on Linux due to missing thread library
2019-12-06 12:28:18 -06:00
Ben Lubar
fd1d490163
Fix tailor plugin switch statement warnings (no functionality change)
2019-12-06 12:24:27 -06:00
PatrikLundell
07dedfb333
Fixed/improved river tile detection
2019-11-24 21:32:07 +01:00
Kelly Kinkade
dfafafdf9b
autofarm.cpp: whitespace, complexity
...
Clean up autofarm.cpp
2019-11-21 18:58:06 -06:00
Kelly Kinkade
5d92026bbe
autofarm: make crop assignment more stable
2019-11-18 09:02:39 -06:00
Kelly Kinkade
7c8c6546c7
autofarm: suspend while processing
2019-11-18 09:02:39 -06:00
Kelly Kinkade
4abd410b1b
Convert autofarm from ruby to C++
...
Reimplement the Ruby autofarm script as a C++ plugin
2019-11-18 09:02:39 -06:00
lethosor
e7353ba9bf
embark-assistant: clean up "else if" style
...
Ref #1456
2019-11-02 22:13:28 -04:00
lethosor
267d52bd17
Merge remote-tracking branch 'PatrikLundell/embark-assistant' into develop
...
Closes #1456
2019-11-02 22:10:08 -04:00
lethosor
a885e3b9be
autoclothing: add docs
...
Ref #1437
2019-11-02 22:00:43 -04:00
lethosor
487377d5b9
Merge remote-tracking branch 'JapaMala/auto_clothing' into develop
2019-11-02 22:00:18 -04:00
lethosor
44f3640344
tailor: add another missing c_str() call
2019-11-02 21:46:10 -04:00
lethosor
6a00510272
tailor: add missing c_str() calls
2019-11-02 21:30:48 -04:00
lethosor
bf4dec6c6a
Update scripts, stonesense, authors
2019-11-02 21:13:17 -04:00
lethosor
150edcfff8
Move tailor to supported plugins
2019-11-02 21:12:41 -04:00
lethosor
c2e5ae844c
tailor: add docs
...
Ref #1398
2019-11-02 21:07:10 -04:00
lethosor
ba8b828e69
Merge remote-tracking branch 'ab9rf/tailor' into develop
2019-11-02 21:02:23 -04:00
lethosor
5780075246
Merge remote-tracking branch 'warmist/dfmonitor_lua_fix' into develop
2019-11-02 16:47:29 -04:00
lethosor
5190257864
createitem: Improve error handling when no caste is specified
...
Extension of #1463
2019-11-01 23:46:42 -04:00
lethosor
5e1fc0700b
Merge remote-tracking branch 'jimcarreer/createitem-ux' into develop
2019-11-01 23:24:10 -04:00
PatrikLundell
7e501fd70b
Fixed bug in region type determination in new code
2019-10-31 20:07:34 +01:00
jimcarreer
cffc30b433
Output Castes on Error
2019-10-06 14:25:33 -04:00