Dwarf Fortress Bug Tracker - Dwarf Fortress
View Issue Details
0009905Dwarf FortressDwarf Mode -- Interface, Managerpublic2016-07-10 02:272022-01-13 07:06
WindowsWindows 1010
0009905: Filtering in work order product lists crashes the game and/or displays incorrect materials (usually with larger worlds)
Game creates when trying to filter on wood in the Materials conditions filter
1. Create workorder for 300 Wooden bolts
2. C for conditions
3. P for product conditions
4. M for change material
5. Type WOO
6. Game crashes on WO.

Running the "Iron man" graphics release of 43.05 if that matters.

errorlog.txt produces only the text:
"removed erroneous unit occupancy flag
removed erroneous unit occupancy flag
removed erroneous unit occupancy flag
binary patch, manager, Probable Quick Fix
has duplicate 0009954resolved lethosor Filtering item type material on work order crashes 
has duplicate 0010175resolved lethosor Memory corruption crash when searching materials 
has duplicate 0010145resolved lethosor Crash to desktop when searching for rock nuts in manager item conditions 
has duplicate 0010155resolved Loci segfault on searching for "pig tail" material in workshop profile work order 
has duplicate 0011057resolved Loci Segmentation fault at manager/ job condition/ material 
has duplicate 0011126resolved Loci Searching "silt" in manager order conditions crashes the game 
has duplicate 0011677resolved lethosor Crashes when trying to set up jobs on the manage screen 
has duplicate 0011749resolved lethosor When Typing in Thread the game crashes 
Issue History
2016-07-10 02:27MaXMCNew Issue
2016-07-11 13:21smw23usedwrongemailthefirsttimeNote Added: 0035602
2016-07-12 13:30MaXMCNote Added: 0035609
2016-09-03 04:25HexaNote Added: 0035840
2016-09-03 04:26HexaNote Edited: 0035840bug_revision_view_page.php?bugnote_id=0035840#r14447
2016-09-03 05:56LociRelationship addedrelated to 0009954
2016-11-25 11:21lethosorReproducibilityalways => random
2016-11-25 11:27lethosorSummarySelecting Material and filtering Wood crashes the game => Filtering on "Wood" in work order product condition material list crashes the game
2017-01-09 09:34lethosorNote Added: 0036140
2017-01-09 09:34lethosorAssigned To => lethosor
2017-01-09 09:34lethosorStatusnew => acknowledged
2017-01-09 09:34lethosorSummaryFiltering on "Wood" in work order product condition material list crashes the game => Filtering on "Wood" in work order product condition material list crashes the game (possibly tileset-specific)
2017-02-27 11:58lethosorIssue Monitored: lethosor
2017-03-27 17:31lethosorRelationship addedhas duplicate 0010175
2017-03-27 17:31lethosorIssue Monitored: BenLubar
2017-03-27 17:32lethosorNote Added: 0036380
2017-03-27 19:35lethosorRelationship replacedhas duplicate 0009954
2017-03-27 19:35lethosorIssue Monitored: MalevolentGM
2017-03-27 19:36lethosorStatusacknowledged => confirmed
2017-03-27 19:59lethosorNote Added: 0036382
2017-03-27 20:00lethosorTag Attached: Probable Quick Fix
2017-03-27 20:00lethosorRelationship addedhas duplicate 0010145
2017-03-27 20:00lethosorRelationship addedhas duplicate 0010155
2017-03-28 06:53lethosorSummaryFiltering on "Wood" in work order product condition material list crashes the game (possibly tileset-specific) => Filtering in work order product lists crashes the game and/or displays incorrect materials
2017-03-28 06:54lethosorSummaryFiltering in work order product lists crashes the game and/or displays incorrect materials => Filtering in work order product lists crashes the game and/or displays incorrect materials (usually with larger worlds)
2017-06-08 19:08HuntthetrollIssue Monitored: Huntthetroll
2017-06-18 09:31ctgarlingtonNote Added: 0036621
2017-06-18 10:19ctgarlingtonIssue Monitored: ctgarlington
2017-08-15 08:59lethosorNote Added: 0036697
2017-08-15 08:59lethosorTag Attached: binary patch
2017-08-15 09:15lethosorNote Edited: 0036382bug_revision_view_page.php?bugnote_id=0036382#r14815
2018-01-09 20:08lethosorTag Attached: manager
2018-01-09 20:10lethosorCategoryDwarf Mode -- Interface, Workshop Profiles => Dwarf Mode -- Interface, Manager
2018-04-25 01:17KulzeNote Added: 0038202
2019-03-13 16:48LociRelationship addedhas duplicate 0011057
2019-07-23 13:06LociRelationship addedhas duplicate 0011126
2019-07-23 13:07LociNote Added: 0039446
2020-02-10 14:25arl1xNote Added: 0040000
2020-02-12 18:34lvalkyrieIssue Monitored: lvalkyrie
2020-02-12 18:34lvalkyrieIssue End Monitor: lvalkyrie
2020-02-12 18:37lvalkyrieNote Added: 0040032
2020-09-19 22:52DrakonisNote Added: 0040743
2020-09-19 23:23DrakonisNote Edited: 0040743bug_revision_view_page.php?bugnote_id=0040743#r16569
2021-01-31 21:51lethosorRelationship addedhas duplicate 0011677
2021-04-16 22:06lethosorRelationship addedhas duplicate 0011749
2021-04-16 22:06lethosorIssue Monitored: kolath
2022-01-13 07:06EkaraNote Added: 0041208

2016-07-11 13:21   
This doesn't crash for me, but I am using windows 7 and am not using a tileset. Does the crash still happen for you without a tileset?
2016-07-12 13:30   
Nope, I can't reproduce it in vanilla DF...
2016-09-03 04:25   
(edited on: 2016-09-03 04:26)
I just encountered this in vanilla DF, perfectly reproducible.

Windows 10 x64, DF 43.05 x64. I want to filter the material condition for plump helmet spawn, then the game crashes at "PL".

if it helps in any way, the MSVC debugger says this:
Unhandled exception at 0x00007FFBC1EE5A4E (ucrtbase.dll) in Dwarf Fortress.exe: Fatal program exit requested.

the game wasn't modified save for a few init settings and disabling aquifers.

edit: fixed typo

2017-01-09 09:34   
Acknowledging this along with 0009954, although I haven't been able to reproduce it.
2017-03-27 17:32   
BenLubar posted a save at 0010175: http://dffd.bay12games.com/file.php?id=12792 [^]
2017-03-27 19:59   
(edited on: 2017-08-15 09:15)
I was able to reproduce the issue with BenLubar's save, and mifki helped identify the issue. Basically, in the "viewscreen_workquota_conditionst" screen (j-m-c), there are two vectors - one with a bunch of string pointers (which DFHack calls "list_entries"), and one with indices of elements in list_entries that match the current search (which DFHack has no name for, so it's called "anon_9" in DFHack 0.43.05-beta1). The problem is that the latter vector contains signed 16-bit integers, so all entries past 32767 (if they exist) are displayed as "unknown material", despite list_entries containing valid material names there. I assume that the crash occurs when DF tries to use *list_entries[i] somewhere, where -32768 <= i <= -1.

The simplest fix is probably to change this vector to store 32-bit integers. I'd be wary of just switching to unsigned 16-bit integers, since BenLubar's save above has 40k+ materials in the list, so it's possible that larger saves could have more than 2^16. (In that case, I'd just expect the list to start over at the first item after item 65535, which probably wouldn't crash, but it would still be a bug.)

2017-06-18 09:31   

Out of curiosity, is this something that's a relatively simple edit somewhere (the changing from 16-bit integers to 32-bit for the indices)? Or is it likely to break functionality, unless other parts of the code are edited as well (and thus requires a larger overall patch)?
2017-08-15 08:59   
It should be a very simple patch - changing vector<int16_t> to vector<int32_t> in one location (although there could be other fields in this viewscreen with similar issues - it's been a long time since I looked at it).
2018-04-25 01:17   
I can confirm this happening in 44.09 still, created a large world, searched for Granite, at typing the 'N' it crashed. Each save created at a medium world in the meantime seems to run just fine.
At the moment this makes managers in large worlds unable to be used for any sort of complex task.
2019-07-23 13:07   
v0.44.12: Sauzels posted a save in 0011126:

http://dffd.bay12games.com/file.php?id=14471 [^]
2020-02-10 14:25   
Hello, I just started experiencing this same bug (or at least similar) in version 47.02 for Windows. I first experienced it while using Phoebus 16x16 texture pack, Announcement Window, and Dwarf Therapist. The bug occurred while creating the following work order:

1) Create work order for 50 coke (doesn't matter if from bituminous coal or lignite).
2) c for conditions
3) r for reagents
4) m for materials
5) Type "bit" looking for bituminous coal
6) Game crashes

I then uninstalled the texture pack from my init file and tried that. I then closed Announcement Window and Dwarf Therapist. I then downloaded a fresh install of DF 42.02 for Windows from the website and ported my save over. Under all conditions the game would crash.
2020-02-12 18:37   
Hello guys, first post, I hope I can help.
So my small workaround on this issue is as follows, before starting editing manager tasks I do a quicksave using DFHack (ctrl+alt+s).
My specific issue was using "wood planks" from the masterwork, everytime I tried to complet the word "wood" my game would crash, so I tried writing "rough" and I got "unknown material block", so I made my task using that one and it worked!

I hope this helps.
2020-09-19 22:52   
(edited on: 2020-09-19 23:23)
Playing on 47.04 vanilla. Large World. Maximized screen.
Consistently reproduced while trying to set conditions for making billions bars from ore.
Im trying to exclude the use of horn and native silver ores setting those conditions to = ZERO
Trying to set Material to silver AFTER setting mateRial conditions

1. Don't maximize
2. Save after each successful step

3.Setup condition for horn silver exclusion
4. Setup reagent/mateRial conditions
5. Setup condition for native silver (typing it however shows 1 option written as "Rock" though)

Exiting and re-entering still displays Rock
Will have to confirm it actually worked after finding native silver ores

Having the same issues with electrum

First had this issue trying to search for Paradise Nut Wood, but can't remember specifics

2022-01-13 07:06   
Playing 47.05 on win10 64 bit home edition

Was trying to set up conditions on a Still workshop order.

First tried searching for 'plump'. Crashed when typed in string got to the 'u'. Crash happened 4 times.

Second tried searching for 'helmet'. Crashed once when got to the 'm'.

Next time I restarted game and tried either search word, crash did not happen, however 'plump helmet' did not appear in the list with either search word.
This happened again on another Still on which Persimmon Wine production was being set up. First the game crashed when trying to search for 'persimmon', then when I tried searching for 'wine', other fruit wines were listed, but not persimmon wine.

The wines that were listed were:
apricot, artichoke, barley, bayberry, beetroot, bilberry, blackberry, blueberry, carambola, carrot, cherry, cranberry, date, durian, dwarven, fisher berry, guava, lychee, and mango. Aside from these there were 11 listings of 'unknown material', 7 listings of 'rock', and 1 listing of 'unknown frozen plant substance'.
Crash happened on one occasion when the 'n' of 'wine' was typed in.
Game crash occurred once when I had gotten to typing in the 'e' of sweet pod when setting reagant conditions for sweet pod/dwarven rum production. On the next attempt crash did not occur, however there was no listing for sweet pods. What was listed were: 12 different types of sweat (cyclops, dark gnome, dwarf, elf, ettin, giant, goblin, gorlak, gremlin, harpy, human, kobold); 9 listings of 'unknown material', 1 of 'rock', and 1 of 'unknown frozen plant substance'.
On another Still
Tried setting up apple cider production. Crash occured when typed in 'i' of cider. Crashed twice. Next time started typing in 'app' apple cider was listed.
This time, setting up the reagant condition of 'unrotten apple tree fruit items' worked!

Then tried setting up cave wheat->dwarven beer production. Crashed twice at 'e' of 'wheat' when searching for reagant, however when searched for 'cave w' was able to successfully find listings for cave wheat plant and seed. Chose plant.

Crashed once at 'r' when trying to search for 'beer' for product condition. Then used 'dwa' as search filter and successfully found 'dwarven beer' listing.
I'd read on the wiki that if you specified the Still to be linked to particular stockpiles it would produce drinks only from the mats in those stockpiles and not just any type of drink generally from any mats anywhere - which was why I was specifying conditions for those particular items.
Some additional weirdness : when trying to set up conditions for reagents for unrotten apricots/apricot wine, the option 'apricot tree fruit' would be available in the search list, but when selected would not show in the condition. ie the condition shown was simply 'unrotten' with no further descriptor following before the inequality and number were shown.