chiark / gitweb /
Properly update desc in Recorded updates
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 1 May 2022 18:47:55 +0000 (19:47 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 1 May 2022 18:55:01 +0000 (19:55 +0100)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
apitest/atmain.rs
src/updates.rs
templates/script.ts

index 0c6782bf479319c2f9a5f1d7edf784be455e0de2..b093e55c33a71bfc9a4500ce41e34cec1d68f67d 100644 (file)
@@ -427,7 +427,7 @@ pub fn update_update_pieces<PI:Idx>(
 
   if k == "Recorded" {
     let p = p.unwrap();
-    for k in ["zg", "svg"] {
+    for k in ["zg", "svg", "desc"] {
       p.info.set(k, &v[k]);
     }
   } else if k == "Piece" {
index f6eba394f8cfa7ce72717825c68522e5a2ff5075..dca1b10ff2b730de7cb152be09e1a3528067e80e 100644 (file)
@@ -251,6 +251,7 @@ enum TransmitUpdateEntry<'u> {
     cseq: ClientSequence,
     zg: Option<Generation>,
     svg: Option<&'u Html>, // IsResponseToClientOp::UpdateSvg
+    desc: Option<&'u Html>,
   },
   Piece(TransmitUpdateEntry_Piece<'u>),
   Image(TransmitUpdateEntry_Image<'u>),
@@ -913,7 +914,11 @@ impl PreparedUpdate {
       let tue = match ftg {
         FTG::Recorded(cseq, ns) => {
           let zg = op.new_z_generation();
-          TUE::Recorded { piece, cseq, zg, svg: ns.map(|ns| &ns.svg) }
+          TUE::Recorded {
+            piece, cseq, zg,
+            svg: ns.map(|ns| &ns.svg),
+            desc: ns.map(|ns| &ns.desc),
+          }
         },
         FTG::Piece => TUE::Piece(pue_piece_to_tue_p(pue_p, player)?),
         FTG::Exactly(x) => x,
index 3f75b1c13dcc4d0e7be00e707572eb5ad720f53f..e1a856390ab536d49c5fe8b1c3b1f833f1239c94 100644 (file)
@@ -2082,7 +2082,7 @@ function piece_set_zlevel_from(piece: PieceId, p: PieceInfo,
 
 messages.Recorded = <MessageHandler>function
 (j: { piece: PieceId, cseq: ClientSeq,
-      zg: Generation|null, svg: string | null } ) {
+      zg: Generation|null, svg: string | null, desc: string | null } ) {
   let piece = j.piece;
   let p = pieces[piece]!;
   piece_recorded_cseq(p, j);
@@ -2102,6 +2102,9 @@ messages.Recorded = <MessageHandler>function
       p.zg = zg_new;
     });
   }
+  if (j.desc != null) {
+    p.desc = j.desc;
+  }
 }
 
 function piece_recorded_cseq(p: PieceInfo, j: { cseq: ClientSeq }) {