diff options
-rw-r--r-- | src/content_nodemeta.cpp | 2 | ||||
-rw-r--r-- | src/inventory.cpp | 2 |
2 files changed, 3 insertions, 1 deletions
diff --git a/src/content_nodemeta.cpp b/src/content_nodemeta.cpp index d29eea661..e8f1e197e 100644 --- a/src/content_nodemeta.cpp +++ b/src/content_nodemeta.cpp @@ -293,7 +293,7 @@ bool FurnaceNodeMetadata::step(float dtime) If there is no source item or source item is not cookable, or furnace became overloaded, stop loop. */ - if((m_fuel_time < m_fuel_totaltime || dst_list->roomForCookedItem(src_item) == false) + if((m_fuel_time < m_fuel_totaltime || (src_item && dst_list->roomForCookedItem(src_item) == false)) && (src_item == NULL || m_src_totaltime < 0.001)) { m_step_accumulator = 0; diff --git a/src/inventory.cpp b/src/inventory.cpp index 62aedb536..116ceeb6d 100644 --- a/src/inventory.cpp +++ b/src/inventory.cpp @@ -581,6 +581,8 @@ bool InventoryList::roomForItem(const InventoryItem *item) bool InventoryList::roomForCookedItem(const InventoryItem *item) { + if(!item) + return false; const InventoryItem *cook = item->createCookResult(); if(!cook) return false; |