summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2014-02-28 20:55:17 +0300
committerAndrei Karas <akaras@inbox.ru>2014-02-28 20:55:17 +0300
commit79e8799a0782a018833ec0003bb0e5086508da07 (patch)
treedd810411b64ac009d9965d79919a43d8c9e095f4
parent6d709b0c218791fdacdbd8b234a1301a135aeb33 (diff)
downloadmv-79e8799a0782a018833ec0003bb0e5086508da07.tar.gz
mv-79e8799a0782a018833ec0003bb0e5086508da07.tar.bz2
mv-79e8799a0782a018833ec0003bb0e5086508da07.tar.xz
mv-79e8799a0782a018833ec0003bb0e5086508da07.zip
fix some leaks issues.
-rw-r--r--src/being/being.cpp1
-rw-r--r--src/gui/widgets/textpreview.cpp24
-rw-r--r--src/net/download.cpp1
-rw-r--r--src/resources/mapreader.cpp1
4 files changed, 15 insertions, 12 deletions
diff --git a/src/being/being.cpp b/src/being/being.cpp
index 705d97439..41c3bc40c 100644
--- a/src/being/being.cpp
+++ b/src/being/being.cpp
@@ -3148,6 +3148,7 @@ void Being::removePet(const int id)
actorManager->erase(pet);
mPets.erase(it);
delete pet;
+ return;
}
}
}
diff --git a/src/gui/widgets/textpreview.cpp b/src/gui/widgets/textpreview.cpp
index 8ac49bfd6..10bd936c6 100644
--- a/src/gui/widgets/textpreview.cpp
+++ b/src/gui/widgets/textpreview.cpp
@@ -80,6 +80,9 @@ TextPreview::~TextPreview()
void TextPreview::draw(Graphics* graphics)
{
+ if (!mFont)
+ return;
+
BLOCK_START("TextPreview::draw")
if (client->getGuiAlpha() != mAlpha)
mAlpha = client->getGuiAlpha();
@@ -99,18 +102,15 @@ void TextPreview::draw(Graphics* graphics)
if (mTextBGColor)
{
- if (mFont)
- {
- const int x = mFont->getWidth(mText) + 1
- + 2 * ((mOutline || mShadow) ? 1 :0);
- const int y = mFont->getHeight() + 1
- + 2 * ((mOutline || mShadow) ? 1 : 0);
- graphics->setColor(Color(static_cast<int>(mTextBGColor->r),
- static_cast<int>(mTextBGColor->g),
- static_cast<int>(mTextBGColor->b),
- intAlpha));
- graphics->fillRectangle(Rect(mPadding, mPadding, x, y));
- }
+ const int x = mFont->getWidth(mText) + 1
+ + 2 * ((mOutline || mShadow) ? 1 :0);
+ const int y = mFont->getHeight() + 1
+ + 2 * ((mOutline || mShadow) ? 1 : 0);
+ graphics->setColor(Color(static_cast<int>(mTextBGColor->r),
+ static_cast<int>(mTextBGColor->g),
+ static_cast<int>(mTextBGColor->b),
+ intAlpha));
+ graphics->fillRectangle(Rect(mPadding, mPadding, x, y));
}
graphics->setColorAll(Color(mTextColor->r,
diff --git a/src/net/download.cpp b/src/net/download.cpp
index d0c6515fc..141a7772f 100644
--- a/src/net/download.cpp
+++ b/src/net/download.cpp
@@ -568,6 +568,7 @@ size_t Download::writeFunction(void *ptr,
memcpy(buf, ptr, totalMem);
buf[totalMem] = 0;
mUploadResponse.append(buf);
+ delete [] buf;
return totalMem;
}
diff --git a/src/resources/mapreader.cpp b/src/resources/mapreader.cpp
index e053e0035..4da901b09 100644
--- a/src/resources/mapreader.cpp
+++ b/src/resources/mapreader.cpp
@@ -214,6 +214,7 @@ void MapReader::addLayerToList(const std::string &fileName)
mKnownLayers[name] = childNode;
mKnownDocs.insert(doc);
}
+ delete doc;
}
Map *MapReader::readMap(const std::string &restrict filename,