diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardDelegate.java b/xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardDelegate.java index 45c6b2298..b28b728fd 100644 --- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardDelegate.java +++ b/xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardDelegate.java @@ -1430,8 +1430,8 @@ public class BoardDelegate extends DelegateBase private void deleteAndClose() { + GameUtils.deleteGame( m_activity, m_gameLock, false ); waitCloseGame( false ); - GameUtils.deleteGame( m_activity, m_rowid, false ); finish(); } diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/GameUtils.java b/xwords4/android/XWords4/src/org/eehouse/android/xw4/GameUtils.java index 9a3ed0a7f..6966adf30 100644 --- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/GameUtils.java +++ b/xwords4/android/XWords4/src/org/eehouse/android/xw4/GameUtils.java @@ -220,6 +220,13 @@ public class GameUtils { return rowid; } + public static void deleteGame( Context context, GameLock lock, boolean informNow ) + { + tellDied( context, lock, informNow ); + Utils.cancelNotification( context, (int)lock.getRowid() ); + DBUtils.deleteGame( context, lock ); + } + public static boolean deleteGame( Context context, long rowid, boolean informNow ) { @@ -227,9 +234,7 @@ public class GameUtils { // does this need to be synchronized? GameLock lock = new GameLock( rowid, true ); if ( lock.tryLock() ) { - tellDied( context, lock, informNow ); - Utils.cancelNotification( context, (int)rowid ); - DBUtils.deleteGame( context, lock ); + deleteGame( context, lock, informNow ); lock.unlock(); success = true; } else {