Bugfix - don't return unless Some
[kaka/rust-sdl-test.git] / src / core / app.rs
index 434f56c..d440eb3 100644 (file)
@@ -141,7 +141,7 @@ impl App {
     pub fn start(&mut self) {
         let mut last_time = Instant::now();
 
-       self.states[0].enter(&mut self.ctrl_man);
+       self.states[0].enter(&self.ctrl_man);
 
         loop {
            if let Some(change) = self.handle_events() {
@@ -248,7 +248,9 @@ impl App {
                 }
                 _ => {
                    if let Some(state) = self.states.last_mut() {
-                       return state.handle_event(event)
+                       if let Some(change) = state.handle_event(event) {
+                           return Some(change);
+                       }
                    } else {
                        return Some(StateChange::Exit)
                    }