diff options
-rw-r--r-- | src/content_nodemeta.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/content_nodemeta.cpp b/src/content_nodemeta.cpp index 701812219..1552c8e15 100644 --- a/src/content_nodemeta.cpp +++ b/src/content_nodemeta.cpp @@ -245,7 +245,7 @@ bool FurnaceNodeMetadata::step(float dtime) InventoryList *src_list = m_inventory->getList("src"); assert(src_list); - const InventoryItem *src_item = src_list->getItem(0); + InventoryItem *src_item = src_list->getItem(0); bool room_available = false; @@ -290,6 +290,11 @@ bool FurnaceNodeMetadata::step(float dtime) } /* + Get the source again in case it has all burned + */ + src_item = src_list->getItem(0); + + /* If there is no source item, or the source item is not cookable, or the furnace is still cooking, or the furnace became overloaded, stop loop. */ |