diff options
author | Andrei Karas <akaras@inbox.ru> | 2014-02-28 20:55:17 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2014-02-28 20:55:17 +0300 |
commit | 79e8799a0782a018833ec0003bb0e5086508da07 (patch) | |
tree | dd810411b64ac009d9965d79919a43d8c9e095f4 | |
parent | 6d709b0c218791fdacdbd8b234a1301a135aeb33 (diff) | |
download | mv-79e8799a0782a018833ec0003bb0e5086508da07.tar.gz mv-79e8799a0782a018833ec0003bb0e5086508da07.tar.bz2 mv-79e8799a0782a018833ec0003bb0e5086508da07.tar.xz mv-79e8799a0782a018833ec0003bb0e5086508da07.zip |
fix some leaks issues.
-rw-r--r-- | src/being/being.cpp | 1 | ||||
-rw-r--r-- | src/gui/widgets/textpreview.cpp | 24 | ||||
-rw-r--r-- | src/net/download.cpp | 1 | ||||
-rw-r--r-- | src/resources/mapreader.cpp | 1 |
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, |