From: Ian Jackson Date: Sun, 23 Aug 2020 21:58:26 +0000 (+0100) Subject: fix X-Git-Tag: otter-0.2.0~1060 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=4921b5c040d3f8435bf7d5cefe028c2bca1b9291;p=otter.git fix --- diff --git a/src/cmdlistener.rs b/src/cmdlistener.rs index bff29ba8..e50ccf25 100644 --- a/src/cmdlistener.rs +++ b/src/cmdlistener.rs @@ -144,7 +144,8 @@ fn execute_game_insn(cs: &CommandStream, Err(ME::AlreadyExists)?; } let logentry = LogEntry { - html: format!("The facilitator added a player xxx"), + html: format!("The facilitator added a player: {}", + htmlescape::encode_minimal(&pl.nick)), }; let (player, logentry) = ig.player_new(pl, logentry)?; #[allow(clippy::useless_format)] // xxx below @@ -164,12 +165,13 @@ fn execute_game_insn(cs: &CommandStream, }), RemovePlayer(player) => { - ig.player_remove(player)?; + let old_state = ig.player_remove(player)?; #[allow(clippy::useless_format)] // xxx below (U{ pcs: vec![], - log: vec![ LogEntry { - html: format!("The facilitator removed a player xxx"), - }], + log: old_state.iter().map(|pl| LogEntry { + html: format!("The facilitator removed a player: {}", + htmlescape::encode_minimal(&pl.nick)), + }).collect(), raw: None}, Fine) }, diff --git a/src/global.rs b/src/global.rs index c6262052..d4e605e9 100644 --- a/src/global.rs +++ b/src/global.rs @@ -328,14 +328,14 @@ impl InstanceGuard<'_> { // #[throws(ServerFailure)] // https://github.com/withoutboats/fehler/issues/62 pub fn player_remove(&mut self, oldplayer: PlayerId) - -> Result<(),ServerFailure> { + -> Result,ServerFailure> { // We have to filter this player out of everything // Then save // Then send updates // We make a copy so if the save fails, we can put everything back let mut players = self.c.g.gs.players.clone(); - players.remove(oldplayer); + let old_data = players.remove(oldplayer); // New state let mut gs = GameState { @@ -422,7 +422,7 @@ impl InstanceGuard<'_> { ); })(); // <- No ?, ensures that IEFE is infallible (barring panics) - Ok(()) + Ok(old_data) } #[throws(MgmtError)]