summaryrefslogtreecommitdiffstats
path: root/core/src/ch
diff options
context:
space:
mode:
authorJérémy Zurcher <jeremy@asynk.ch>2016-03-14 15:55:44 +0100
committerJérémy Zurcher <jeremy@asynk.ch>2016-03-14 15:55:44 +0100
commit8cf7d3505ec951bf41c4340a0ca5fc29c5daa69f (patch)
tree82fad3e11571920b9afd94c7f87f56bf08ce3eae /core/src/ch
parent3e969f1d7a9966a40657b1ae07b949cde112525b (diff)
downloadRustAndDust-8cf7d3505ec951bf41c4340a0ca5fc29c5daa69f.zip
RustAndDust-8cf7d3505ec951bf41c4340a0ca5fc29c5daa69f.tar.gz
DB: deleteGame(GameRecord) -> deleteGame(int)
Diffstat (limited to 'core/src/ch')
-rw-r--r--core/src/ch/asynk/rustanddust/menu/PlayMenu.java2
-rw-r--r--core/src/ch/asynk/rustanddust/util/DB.java9
2 files changed, 6 insertions, 5 deletions
diff --git a/core/src/ch/asynk/rustanddust/menu/PlayMenu.java b/core/src/ch/asynk/rustanddust/menu/PlayMenu.java
index 2c9caa4..f1dbe47 100644
--- a/core/src/ch/asynk/rustanddust/menu/PlayMenu.java
+++ b/core/src/ch/asynk/rustanddust/menu/PlayMenu.java
@@ -49,7 +49,7 @@ public class PlayMenu extends Patch implements MenuCtrl.Panel
public MenuCtrl.MenuType postAnswer(boolean ok)
{
if (ok) {
- game.db.deleteGame(GameRecord.remove(getList().getIdx()));
+ game.db.deleteGame(GameRecord.remove(getList().getIdx()).id);
getList().unselect();
showBtns(false);
if (GameRecord.list.size() <= 0)
diff --git a/core/src/ch/asynk/rustanddust/util/DB.java b/core/src/ch/asynk/rustanddust/util/DB.java
index 44cb79c..3b769a2 100644
--- a/core/src/ch/asynk/rustanddust/util/DB.java
+++ b/core/src/ch/asynk/rustanddust/util/DB.java
@@ -300,24 +300,25 @@ public class DB
cursor.next();
r = from(cursor);
if (!r.hash.equals(getDigest(r.payload))) {
- // TODO recover from that big shit
RustAndDust.error(String.format("corrupted game %d", game));
r = null;
}
}
} catch (SQLiteGdxException e) { RustAndDust.error("loadGame"); }
+ if (r == null)
+ deleteGame(game);
return r;
}
private static final String DELETE_GAME = "delete from games where _id=%d;";
private static final String DELETE_TURNS = "delete from turns where game=%d;";
- public boolean deleteGame(GameRecord game)
+ public boolean deleteGame(int game)
{
RustAndDust.debug("deleteGame");
try {
- exec(String.format(DELETE_TURNS, game.id));
- exec(String.format(DELETE_GAME, game.id));
+ exec(String.format(DELETE_TURNS, game));
+ exec(String.format(DELETE_GAME, game));
} catch (SQLiteGdxException e) {
RustAndDust.error("deleteGame");
return false;