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

1. Include store in hospital jobs when recomputing counters

0x746d7
75 D7
90 90

<<<<
.text:080BC6D7                 jnz     short loc_80BC6B0
====
.text:080BC6D7                 nop
.text:080BC6D8                 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

0x67cb0e
0B 04 90
8B 1C 90

0x67cb18
8B 40 74
8B 43 74

<<<<
.text:086C4B0E                 mov     eax, [eax+edx*4]
.text:086C4B11                 mov     edx, [esp+ecx*4+39Ch+var_2B4]
.text:086C4B18                 mov     eax, [eax+74h]
====
.text:086C4B0E                 mov     ebx, [eax+edx*4]
.text:086C4B11                 mov     edx, [esp+ecx*4+39Ch+var_2B4]
.text:086C4B18                 mov     eax, [ebx+74h]
>>>>

- 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
000746D7: 75 90
000746D8: D7 90
0067CB0F: 04 1C
0067CB19: 40 43