http://www.bay12games.com/dwarves/mantisbt/view.php?id=4406

1. Include store in hospital jobs when recomputing counters

0x68a63
0F 85 58 01 00 00
90 90 90 90 90 90

<<<<
.text:00469663                 jnz     loc_4697C1
====
.text:00469663                 nop
.text:00469664                 nop
.text:00469665                 nop
.text:00469666                 nop
.text:00469667                 nop
.text:00469668                 nop
>>>>

- if (job->getBuildingRef(BUILDING_DESTINATION) != this) continue;
+ // NOP

This reference points to the containers, not the hospital civzone.
Since fixing this properly is too hard for a patch, just remove the
check. Most people have only one hospital anyway, and it is better
to err on the side of caution here.


2. Make the stockpiling code increment the right stock counters

0x3dcbf9
8B 0C 90 8B 81 80 00 00 00
8B 3C 90 8B 87 80 00 00 00

<<<<
.text:007DD7F9                 mov     ecx, [eax+edx*4]
.text:007DD7FC                 mov     eax, [ecx+80h]
====
.text:007DD7F9                 mov     edi, [eax+edx*4]
.text:007DD7FC                 mov     eax, [edi+80h]
>>>>

- id = civzones[i]->children[child_idx[i]]->id
+ cur_civzone = civzones[i] // existing var from previous loop
+ id = cur_civzone->children[child_idx[i]]->id

The reason being, later code uses that var (at this point containing
useless data) to increment counters and amounts in the hospital.


---8<---
This difference file is created by The Interactive Disassembler

Dwarf Fortress.exe
00068A63: 0F 90
00068A64: 85 90
00068A65: 58 90
00068A66: 01 90
00068A67: 00 90
00068A68: 00 90
003DCBFA: 0C 3C
003DCBFD: 81 87