chiark
/
gitweb
/
~ianmdlvl
/
otter.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
2d099c6
)
cmdlistener: Do not allow resizing the table so pieces fall outside
author
Ian Jackson
<ijackson@chiark.greenend.org.uk>
Wed, 28 Apr 2021 22:29:37 +0000
(23:29 +0100)
committer
Ian Jackson
<ijackson@chiark.greenend.org.uk>
Wed, 28 Apr 2021 22:29:37 +0000
(23:29 +0100)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
daemon/cmdlistener.rs
patch
|
blob
|
history
diff --git
a/daemon/cmdlistener.rs
b/daemon/cmdlistener.rs
index 1e2b8368a95895ec7cf4a94d60f54874663bb24f..55d128fe0ef88c60d4c7b2534331b19cba9ee171 100644
(file)
--- a/
daemon/cmdlistener.rs
+++ b/
daemon/cmdlistener.rs
@@
-377,6
+377,9
@@
fn execute_game_insn<'cs, 'igr, 'ig: 'igr>(
MGI::SetTableSize(size) => {
let ig = cs.check_acl(ag, ig, PCH::Instance, &[TP::ChangePieces])?.0;
+ for p in ig.gs.pieces.values() {
+ p.pos.clamped(size).map_err(|_| SpecError::PosOffTable)?;
+ }
ig.gs.table_size = size;
(U{ pcs: vec![],
log: vec![ LogEntry {