From 910ea1476664d8a11d57eaf8ff7f281bcfacd184 Mon Sep 17 00:00:00 2001 From: Jared Adams Date: Thu, 6 May 2010 23:11:21 -0600 Subject: Fix some issues found by Cppcheck --- src/client.h | 8 ++++---- src/item.h | 2 +- src/localplayer.cpp | 11 ++++++----- src/particlecontainer.cpp | 9 ++++++--- src/resources/resourcemanager.cpp | 6 +++++- 5 files changed, 22 insertions(+), 14 deletions(-) (limited to 'src') diff --git a/src/client.h b/src/client.h index c120b248..3c52ea37 100644 --- a/src/client.h +++ b/src/client.h @@ -22,17 +22,17 @@ #ifndef CLIENT_H #define CLIENT_H -#include "net/serverinfo.h" - #include "configlistener.h" -#include +#include "net/serverinfo.h" -#include +#include #include #include +#include + class Button; class Desktop; class LoginData; diff --git a/src/item.h b/src/item.h index 89b8e59e..17be8f04 100644 --- a/src/item.h +++ b/src/item.h @@ -41,7 +41,7 @@ class Item /** * Destructor. */ - ~Item(); + virtual ~Item(); /** * Sets the item id, identifying the item type. diff --git a/src/localplayer.cpp b/src/localplayer.cpp index 0b0e22f5..b06ea456 100644 --- a/src/localplayer.cpp +++ b/src/localplayer.cpp @@ -135,6 +135,9 @@ LocalPlayer::~LocalPlayer() mTargetCursorImages[0][i]->decRef(); mTargetCursorImages[1][i]->decRef(); } + + delete mAwayDialog; + delete mAwayListener; } void LocalPlayer::logic() @@ -1433,10 +1436,8 @@ void LocalPlayer::changeAwayMode() config.getValue("afkMessage", "I am away from keyboard")); mAwayDialog->addActionListener(mAwayListener); } - else - { - mAwayDialog = 0; - } + + mAwayDialog = 0; } void LocalPlayer::setAway(const std::string &message) @@ -1478,4 +1479,4 @@ void AwayListener::action(const gcn::ActionEvent &event) { player_node->changeAwayMode(); } -} \ No newline at end of file +} diff --git a/src/particlecontainer.cpp b/src/particlecontainer.cpp index 175c1e87..6900539d 100644 --- a/src/particlecontainer.cpp +++ b/src/particlecontainer.cpp @@ -71,14 +71,17 @@ void ParticleList::addLocally(Particle *particle) void ParticleList::removeLocally(Particle *particle) { - for (std::list::iterator it = mElements.begin(); - it != mElements.end(); it++) + std::list::iterator it, it_end; + for (it = mElements.begin(), it_end = mElements.end(); + it != it_end;) { if (*it == particle) { (*it)->kill(); - mElements.erase(it); + it = mElements.erase(it); } + else + it++; } } diff --git a/src/resources/resourcemanager.cpp b/src/resources/resourcemanager.cpp index 24f346f7..f785f20a 100644 --- a/src/resources/resourcemanager.cpp +++ b/src/resources/resourcemanager.cpp @@ -316,7 +316,11 @@ struct DyedImageLoader } int fileSize; void *buffer = l->manager->loadFile(path, fileSize); - if (!buffer) return NULL; + if (!buffer) + { + delete d; + return NULL; + } Resource *res = d ? Image::load(buffer, fileSize, *d) : Image::load(buffer, fileSize); free(buffer); -- cgit v1.2.3-70-g09d2