summaryrefslogtreecommitdiff
path: root/src/gui/equipmentwindow.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/equipmentwindow.cpp')
-rw-r--r--src/gui/equipmentwindow.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/gui/equipmentwindow.cpp b/src/gui/equipmentwindow.cpp
index edad33623..92ff782ab 100644
--- a/src/gui/equipmentwindow.cpp
+++ b/src/gui/equipmentwindow.cpp
@@ -120,6 +120,13 @@ EquipmentWindow::~EquipmentWindow()
{
delete mItemPopup;
mItemPopup = 0;
+ if (this == beingEquipmentWindow)
+ {
+ if (mEquipment)
+ delete mEquipment->getBackend();
+ delete mEquipment;
+ mEquipment = 0;
+ }
}
void EquipmentWindow::draw(gcn::Graphics *graphics)
@@ -299,13 +306,13 @@ void EquipmentWindow::setBeing(Being *being)
mBeing = being;
if (!being)
{
+ if (mEquipment)
+ delete mEquipment->getBackend();
delete mEquipment;
mEquipment = 0;
return;
}
mEquipment = being->getEquipment();
- if (!mEquipment)
- return;
}
void EquipmentWindow::updateBeing(Being *being)