aboutsummaryrefslogtreecommitdiff
path: root/backends/keymapper
diff options
context:
space:
mode:
authorStephen Kennedy2008-08-14 19:20:25 +0000
committerStephen Kennedy2008-08-14 19:20:25 +0000
commit08ef79ce45b2e525b67989b858a8652b3f7ed849 (patch)
treea3c92187b24e79ecacab054f1069bdd191f3713a /backends/keymapper
parentd40e7a6640a3e58e62f75dc9c05e41fbaaa26bd4 (diff)
downloadscummvm-rg350-08ef79ce45b2e525b67989b858a8652b3f7ed849.tar.gz
scummvm-rg350-08ef79ce45b2e525b67989b858a8652b3f7ed849.tar.bz2
scummvm-rg350-08ef79ce45b2e525b67989b858a8652b3f7ed849.zip
Loads of valgrind fixes
svn-id: r33869
Diffstat (limited to 'backends/keymapper')
-rw-r--r--backends/keymapper/keymap.cpp6
-rw-r--r--backends/keymapper/keymap.h1
-rw-r--r--backends/keymapper/remap-dialog.cpp4
3 files changed, 8 insertions, 3 deletions
diff --git a/backends/keymapper/keymap.cpp b/backends/keymapper/keymap.cpp
index 64076d4457..42454efc87 100644
--- a/backends/keymapper/keymap.cpp
+++ b/backends/keymapper/keymap.cpp
@@ -38,6 +38,12 @@ Keymap::Keymap(const Keymap& km) : _actions(km._actions), _keymap(), _configDoma
}
}
+Keymap::~Keymap() {
+ List<Action*>::iterator it;
+ for (it = _actions.begin(); it != _actions.end(); it++)
+ delete *it;
+}
+
void Keymap::addAction(Action *action) {
if (findAction(action->id))
error("Action with id %d already in KeyMap!", action->id);
diff --git a/backends/keymapper/keymap.h b/backends/keymapper/keymap.h
index 3159dab7f8..f921b5bd87 100644
--- a/backends/keymapper/keymap.h
+++ b/backends/keymapper/keymap.h
@@ -53,6 +53,7 @@ class Keymap {
public:
Keymap(const String& name, Keymap *parent = 0) : _name(name), _parent(parent) {}
Keymap(const Keymap& km);
+ ~Keymap();
public:
/**
diff --git a/backends/keymapper/remap-dialog.cpp b/backends/keymapper/remap-dialog.cpp
index 57e4578629..0c9d29a7a1 100644
--- a/backends/keymapper/remap-dialog.cpp
+++ b/backends/keymapper/remap-dialog.cpp
@@ -265,9 +265,7 @@ void RemapDialog::loadKeymap() {
}
} else if (_kmPopUp->getSelected() != -1) {
- uint32 select = _kmPopUp->getSelected();
- uint32 tag = _kmPopUp->getSelectedTag();
- Keymap *km = _keymapTable[tag];
+ Keymap *km = _keymapTable[_kmPopUp->getSelectedTag()];
List<Action*>::iterator it;
for (it = km->getActions().begin(); it != km->getActions().end(); it++) {