From 93aa9c81a2043c6caecd8437bfecbfa0c9b79436 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Sun, 5 Jun 2011 04:45:51 +0300 Subject: Fix memory leak in equipmentwindow and socialwindow. --- src/gui/equipmentwindow.cpp | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'src/gui/equipmentwindow.cpp') 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) -- cgit v1.2.3-60-g2f50