From: Benjamin Auder <benjamin.auder@somewhere>
Date: Fri, 22 Apr 2022 05:57:29 +0000 (+0200)
Subject: Add a temporary patch for so far unexplained bug
X-Git-Url: https://git.auder.net/doc/html/css/pieces/vendor/DESCRIPTION?a=commitdiff_plain;h=e8b85c869f8ed1a2e626f60c218c36121c49ec4e;p=xogo.git

Add a temporary patch for so far unexplained bug
---

diff --git a/base_rules.js b/base_rules.js
index 6efce02..e987492 100644
--- a/base_rules.js
+++ b/base_rules.js
@@ -2189,7 +2189,9 @@ export default class ChessRules {
   playVisual(move, r) {
     move.vanish.forEach(v => {
       if (!this.enlightened || this.enlightened[v.x][v.y]) {
-        this.g_pieces[v.x][v.y].remove();
+        // TODO: next "if" shouldn't be required
+        if (this.g_pieces[v.x][v.y])
+          this.g_pieces[v.x][v.y].remove();
         this.g_pieces[v.x][v.y] = null;
       }
     });
@@ -2242,6 +2244,11 @@ export default class ChessRules {
     const dropMove = (typeof i1 == "string");
     const startArray = (dropMove ? this.r_pieces : this.g_pieces);
     let startPiece = startArray[i1][j1];
+    // TODO: next "if" shouldn't be required
+    if (!startPiece) {
+      callback();
+      return;
+    }
     let chessboard =
       document.getElementById(this.containerId).querySelector(".chessboard");
     const clonePiece = (