summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/invent.cc
diff options
context:
space:
mode:
authorj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2007-09-10 09:48:48 +0000
committerj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2007-09-10 09:48:48 +0000
commita821a5c34708aff459b31f4d16d2c33ec0ca0ecd (patch)
treefc3a31b7f182b9a2941eb5bd8f342b065fcda090 /crawl-ref/source/invent.cc
parent2ae0f20477620dc731f9d9fc40cc1d8a38069b55 (diff)
downloadcrawl-ref-a821a5c34708aff459b31f4d16d2c33ec0ca0ecd.tar.gz
crawl-ref-a821a5c34708aff459b31f4d16d2c33ec0ca0ecd.zip
A few general fixes:
Fix 1791185: Memory overrun. Patch provided by ennewalker. Fix 1789803. Again, patch by ennewalker. Fix 1790486: Throwing nets and launchers. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@2063 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/invent.cc')
-rw-r--r--crawl-ref/source/invent.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/crawl-ref/source/invent.cc b/crawl-ref/source/invent.cc
index e757ecee26..c835984358 100644
--- a/crawl-ref/source/invent.cc
+++ b/crawl-ref/source/invent.cc
@@ -1025,7 +1025,7 @@ static bool check_old_item_warning( const item_def& item,
else if (oper == OPER_WEAR) // can we safely take off old item?
{
equipment_type eq_slot = get_armour_slot(item);
- if (you.equip[eq_slot] == -1)
+ if (item.base_type != OBJ_ARMOUR || you.equip[eq_slot] == -1)
return (true);
old_item = you.inv[you.equip[eq_slot]];
@@ -1036,6 +1036,9 @@ static bool check_old_item_warning( const item_def& item,
}
else if (oper == OPER_PUTON) // can we safely remove old item?
{
+ if (item.base_type != OBJ_JEWELLERY)
+ return (true);
+
if (jewellery_is_amulet(item))
{
if (you.equip[EQ_AMULET] == -1)