summaryrefslogtreecommitdiff
path: root/test/controllermap.c
diff options
context:
space:
mode:
authorGabriel Jacobo <gabomdq@gmail.com>2014-03-24 11:42:09 -0300
committerGabriel Jacobo <gabomdq@gmail.com>2014-03-24 11:42:09 -0300
commit6729461327544e816cd512292a07384d3a0ead8a (patch)
tree03982e944ae1a92b4ee2ab7d6cc5eb8d9f0da278 /test/controllermap.c
parent993c3ab68c515d00b78e49b4eae6358218341264 (diff)
downloadsdl-6729461327544e816cd512292a07384d3a0ead8a.tar.gz
Fixes #2456, controllermap's undo does not work correctly (by Bogdan Marinov)
Diffstat (limited to 'test/controllermap.c')
-rw-r--r--test/controllermap.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/test/controllermap.c b/test/controllermap.c
index 8faaf584a..d93f9570a 100644
--- a/test/controllermap.c
+++ b/test/controllermap.c
@@ -111,7 +111,7 @@ WatchJoystick(SDL_Joystick * joystick)
Uint8 alpha=200, alpha_step = -1;
Uint32 alpha_ticks;
char mapping[4096], temp[4096];
- MappingStep *step;
+ MappingStep *step, *prev_step;
MappingStep steps[] = {
{342, 132, 0.0, MARKER_BUTTON, "x", -1, -1, -1, -1, ""},
{387, 167, 0.0, MARKER_BUTTON, "a", -1, -1, -1, -1, ""},
@@ -296,8 +296,8 @@ WatchJoystick(SDL_Joystick * joystick)
if (event.key.keysym.sym == SDLK_BACKSPACE || event.key.keysym.sym == SDLK_AC_BACK) {
/* Undo! */
if (s > 0) {
- SDL_strlcpy(mapping, step->mapping, SDL_arraysize(step->mapping));
- s--;
+ prev_step = &steps[--s];
+ SDL_strlcpy(mapping, prev_step->mapping, SDL_arraysize(prev_step->mapping));
next = SDL_TRUE;
}
break;