Skip to content

gui/settings-manager: preserve new built-in work details - #1630

Merged
ab9rf merged 2 commits into
DFHack:masterfrom
Alistair-Afton:fix-settings-manager-new-work-details
Sep 22, 2026
Merged

ab9rf merged 2 commits into
DFHack:masterfrom
Alistair-Afton:fix-settings-manager-new-work-details

Conversation

@Alistair-Afton

Copy link
Copy Markdown
Contributor

Summary

  • match saved built-in work details by icon and name instead of vector position
  • preserve built-in details introduced after the settings file was saved
  • restore saved custom details after the current built-in prefix
  • retain compatibility with the old work_detail_flags key

Fixes DFHack/dfhack#5609.

Testing

  • test -t 'settings%-manager'
  • verified a pre-53.01 ten-detail save preserves the newer Siege Operators detail
  • verified old custom details move after new built-ins and unsaved custom details are removed
  • verified legacy work_detail_flags data still loads

Match saved built-in work details by identity instead of raw vector position, then restore custom details after the current built-in prefix. This keeps built-ins added by newer DF versions from being overwritten or truncated by older settings.
@ab9rf
ab9rf merged commit 595d7bf into DFHack:master Sep 22, 2026
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

gui/settings-manager overwrites the new "siege operator" work detail when loading an pre-53.01 saved work detail

2 participants