[ermine_session_shell] Implement Quit method on Tiles interface
Also removes the [Transitional] default cause and pragma.
Test: compile
Change-Id: I1f7360063c3ee222c26a5d716d5f4313652ff656
diff --git a/bin/session_shell/ermine_session_shell/src/main.rs b/bin/session_shell/ermine_session_shell/src/main.rs
index 83b01f8..ef2f693 100644
--- a/bin/session_shell/ermine_session_shell/src/main.rs
+++ b/bin/session_shell/ermine_session_shell/src/main.rs
@@ -190,7 +190,6 @@
.add_child_view_for_story_attach(key_to_use, story_id, view_owner);
}
- #[allow(unreachable_patterns)]
pub fn spawn_tiles_server(chan: fasync::Channel) {
fasync::spawn(
tiles::ControllerRequestStream::from_channel(chan)
@@ -219,7 +218,9 @@
&mut focusabilties.iter_mut().map(|a| *a),
))
}
- _ => fready(Ok(())),
+ tiles::ControllerRequest::Quit { control_handle: _ } => {
+ ::std::process::exit(0)
+ }
})
.unwrap_or_else(|e| eprintln!("error running Tiles controller server: {:?}", e)),
)