herzbube / littlego

Little Go. An iOS application that lets you play the game of Go on the iPhone or iPad.
https://littlego.herzbube.ch/
Apache License 2.0
138 stars 53 forks source link

App crash when game is loaded while an ended game with non-alternating dispute resolution is present #361

Closed herzbube closed 3 years ago

herzbube commented 3 years ago
  1. Go to "Scoring settings" and enable "Auto scoring/resuming play"
  2. Start a new game A.
  3. Save game A without any moves.
  4. Start a new game B. In the "New Game" screen set "Dispute resolution" to "Non-alternating play" and "Life & death settling after" to "2 passes".
  5. Play two pass moves. This causes the game to end due to two consecutive pass moves. It also causes the app to switch to Scoring mode due to the enabled "Auto scoring/resuming play" setting.
  6. Save game B.
  7. Go to the archive
  8. Load game A.

Expected: Game A is loaded without any user interaction. Actual: The app displays the alert "Choose side to play first". When the user chooses a side and dismisses the alert the app crashes.

herzbube commented 3 years ago

Analysis: