summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSimon Robertshaw <simon@hardwired.org.uk>2012-08-10 21:59:46 (GMT)
committer Simon Robertshaw <simon@hardwired.org.uk>2012-08-10 21:59:46 (GMT)
commita8fbd905c258e57a698187b471f10f81eb516ea0 (patch)
tree551f0eaa2fefa1d9a11559093e03f58a874e7e5b /src
parent5a8d26554a8bca79d7d502e94f54b219394532d5 (diff)
downloadpowder-a8fbd905c258e57a698187b471f10f81eb516ea0.zip
powder-a8fbd905c258e57a698187b471f10f81eb516ea0.tar.gz
Fix issue where buttons will cause heap corruption if they are removed from inside DoAction
Diffstat (limited to 'src')
-rw-r--r--src/game/GameView.cpp1
-rw-r--r--src/interface/Button.cpp3
2 files changed, 1 insertions, 3 deletions
diff --git a/src/game/GameView.cpp b/src/game/GameView.cpp
index 106e4e0..df755f0 100644
--- a/src/game/GameView.cpp
+++ b/src/game/GameView.cpp
@@ -1490,7 +1490,6 @@ void GameView::NotifyNotificationsChanged(GameModel * sender)
}
notificationComponents.clear();
-
std::vector<Notification*> notifications = sender->GetNotifications();
int currentY = YRES-23;
diff --git a/src/interface/Button.cpp b/src/interface/Button.cpp
index a9b0606..d5cc382 100644
--- a/src/interface/Button.cpp
+++ b/src/interface/Button.cpp
@@ -151,10 +151,9 @@ void Button::OnMouseUp(int x, int y, unsigned int button)
if(isButtonDown)
{
+ isButtonDown = false;
DoAction();
}
-
- isButtonDown = false;
}
void Button::OnMouseClick(int x, int y, unsigned int button)