Commit graph

7546 commits

Author SHA1 Message Date
Eric House
a4302897e2 enlarge dictmgr to track a compile-time defined number of dicts 2014-03-10 21:01:24 -07:00
Eric House
55267f2e42 add memmove 2014-03-10 20:25:38 -07:00
Eric House
f601f2bf57 use dictmgr in java. This requires jni globals that live across boards being opened and that include a mempool dicts will be allocated out of. Seems to work, and to get ref counts as high as 6 or so before they drop down to one when all boards are closed. (The final is held by the dictmgr which won't give it up until the app itself is GC'd) 2014-03-10 19:14:59 -07:00
Eric House
3c32ca6402 add option to log callsites of dictmgr put and get for easier ref leak tracking 2014-03-10 18:59:10 -07:00
Eric House
6203a23c62 don't crash in networked games 2014-03-10 18:58:16 -07:00
Eric House
fec1ce3bed use pthreads mutex to protect with will become critical sections in dict mgr, as will be accessed from several threads on android 2014-03-10 18:56:39 -07:00
Eric House
5500d36cde add and use dict manager that caches, using refcount, dicts across games. Allows multiple games to be opened, and open at the same time, with only one instance of a dict ever created. Works on linux; not used or tested yet on Android. 2014-03-09 19:12:21 -07:00
Eric House
a2671f5ef0 add global mempool that can survive individual games, and include it every game's globals. Use it instead of game's mempool to create dictionaries so they can outlive a game and not trip asserts on pool delete. Wrap dicts in a java class that refcounts them when BoardCanvas wants to keep one so that, I hope, the bug using a deleted dict will go away. 2014-03-09 14:46:33 -07:00
Eric House
9f5d470c07 no need for final 2014-03-09 14:39:18 -07:00
Eric House
9d9c822bb8 save, commented out, how to call the contstructor of a nested class -- in case I go back to doing things that way. 2014-03-09 14:23:24 -07:00
Eric House
a7c114e3f9 refcount dicts. Model "owns" its copy and so increments the refcount when gaining one and decrements the count on any being replaced (and on all on exit). This is setting up the real change, which is to let the java world wrap dicts in objects that hang onto them until they're destroyed, which should fix problems where dicts are referenced after they've been destroyed. 2014-03-08 20:57:27 -08:00
Eric House
8a6adfec34 cleanup -- no logic change 2014-03-08 20:51:49 -08:00
Eric House
e0c17c50b3 catch off-thrown exception. This should prevent a crash, but the fix is probably to figure out why it's happening -- later. 2014-03-08 12:55:46 -08:00
Eric House
23b72467bb don't assert unset cookieID, as that's normal (I think) for unconnected case 2014-03-08 12:47:58 -08:00
Eric House
fb7c1682b4 tweak string 2014-03-07 19:10:06 -08:00
Eric House
3b971e0153 tweak build timestamp format 2014-03-06 22:11:13 -08:00
Eric House
c31c9cb365 don't show resend menuitem unless there are moves to resend 2014-03-06 07:43:20 -08:00
Eric House
c982fb54d9 up strings and notes for new release 2014-03-06 06:47:43 -08:00
Eric House
3daa877bee Send from resend asyncTask using factored-out code in CommsTransport. Works for SMS at least. 2014-03-05 07:15:34 -08:00
Eric House
923ac6db98 show loadDB menuitem only when nothing's selected 2014-03-05 06:37:02 -08:00
Eric House
45ace48490 tweak string 2014-03-05 06:32:03 -08:00
Eric House
bcfd27ee7f don't crash when there's a SMS game with pending messages 2014-03-04 21:38:22 -08:00
Eric House
5ebbf87c24 don't kick off async task if there's nothing to send 2014-03-04 21:13:23 -08:00
Eric House
811be34a20 remove logging 2014-03-04 21:12:40 -08:00
Eric House
cfee7ef8ac resend all messages from the network change broadcast receiver itself instead of GamesList, which will not be listening if another activity is in front or if the app's in the background. 2014-03-04 19:03:39 -08:00
Eric House
3c0b4a899f resend all unacked messages each time we regain network, but only up to four times/hour. 2014-03-04 18:36:46 -08:00
Eric House
431b24409f Fix kitkat-only problem where expiring rects are clipped at top and left 2014-03-04 07:40:25 -08:00
Eric House
0a601a73a4 (commented out) line to cause ndk to be built without optimization for better source-level debugging 2014-03-04 07:07:44 -08:00
Eric House
7002ff11c7 fix so non-DEBUG build compiles 2014-03-04 07:07:01 -08:00
Eric House
df771f50c4 add function that resends all pending (un-ackd, at the comms level) messages for unlocked games and, for testing mostly, a menuitem on the main activity to trigger it. Probably crashes if there's a message for a game connected by other than relay. 2014-03-04 07:05:55 -08:00
Eric House
60bce8f22b add menuitems recently added to non-small-devices' menu 2014-03-02 20:34:58 -08:00
Eric House
9d174740c8 don't show "send pending messages" menuitem when there are none 2014-03-01 16:15:35 -08:00
Eric House
386c28e596 don't notify network change listeners unless a change is in fact a change and until there's been two seconds without changes. There's a lot of connection up-and-down spam when connecting and maybe with iffy connectivity, and no point in passing that through to code that will do stuff like stopping a send thread in response. 2014-03-01 15:17:14 -08:00
Eric House
23638310bc register for net state changes, and toast/log on debug builds. This is toward resending from all games with packets pending on reconnect. 2014-03-01 14:59:17 -08:00
Eric House
56c05869da allow to run from bin directory, which turns out to be useful 2014-03-01 12:39:51 -08:00
Eric House
d122b7d2ff include all .xml and .java files, but only if they're not named in a .gitignore file in the same directory 2014-03-01 11:44:20 -08:00
Eric House
c1e22dd3cf add summary DB column and jni code to fetch it to store and display number of unacked messages a game has. And add debug-only option to display it in the main list. In the future I want to be able to iterate over all these games and resend their packets (without opening them visually) when an internet connection comes back up. 2014-02-28 18:59:12 -08:00
Eric House
242f722f2e remove logging 2014-02-28 18:56:39 -08:00
Eric House
e536a6d3ee format build timestamp added to about dialog 2014-02-28 06:47:44 -08:00
Eric House
1d85a74a6c readd old assertions -- and fix compile error 2014-02-28 06:47:27 -08:00
Eric House
b45fcf2aa6 force output in UTF-8 -- fixes German BYOD display and still works for English 2014-02-28 06:27:54 -08:00
Eric House
9a94663fb8 log when we drop a message because two possible receiving games are open 2014-02-28 06:13:52 -08:00
Eric House
61080e1b62 revert changes pausing instead of exiting JNI thread (and so not saving game data) from BoardActivity's onPause() when onFinishing() returned false. This is necessary because there are cases where moves were generated and sent without local state ever being saved because onPause() was called only once on what turned out to be activity termination. 2014-02-28 05:57:32 -08:00
Eric House
cc4982b833 add debug-only code to assert that movestack is never disposed when dirty (via macros easy to use elsewhere) 2014-02-28 05:43:47 -08:00
Eric House
efbb676cce better formatting for hexdump offsets 2014-02-28 05:42:22 -08:00
Eric House
3ecd0a4b03 fix to compile without DEBUG 2014-02-28 04:58:25 -08:00
Eric House
2f7839f7e0 cleanup 2014-02-28 04:35:39 -08:00
Eric House
39983f65b6 remove logging 2014-02-27 21:44:25 -08:00
Eric House
5274a803b2 move menuitem 2014-02-27 19:13:22 -08:00
Eric House
29d08b95ce expose comms_getStats() via a debug-build-only menu and dialog 2014-02-26 21:41:49 -08:00
Eric House
4e2c93fd3c more work on script 2014-02-26 07:52:18 -08:00
Eric House
33d6f212b2 beginning of a script to parse relay logs 2014-02-25 07:56:48 -08:00
Eric House
1f9a4180e8 remove misleading comments 2014-02-25 07:56:22 -08:00
Eric House
fc799449e9 save game and summary in a synchronized block so lock doesn't get released halfway through 2014-02-24 21:50:17 -08:00
Eric House
27a5990283 log out-of-date token 2014-02-24 08:00:52 -08:00
Eric House
cd31cd432a tweak column display 2014-02-24 08:00:43 -08:00
Eric House
b840f7d708 add filter for rooms 2014-02-24 08:00:21 -08:00
Eric House
565a466164 capitalize note 2014-02-23 12:10:19 -08:00
Eric House
fe2a623a5a use sowpods list from freescrabbledictionary.com 2014-02-23 11:28:49 -08:00
Eric House
f50c1191b5 fix to compile and produce correct output on 64-bit system 2014-02-23 11:26:10 -08:00
Eric House
a72932486b toward having networking and activity swaps work without fully
shutting down the game in onPause(): use pause() and resume() to
suspend the jnithread when the game's been unlocked.
2014-02-13 19:29:35 -08:00
Eric House
7c45e3c5b3 add pause() and resume() 2014-02-13 19:26:09 -08:00
Eric House
1e30582c3b more logging 2014-02-13 07:50:21 -08:00
Eric House
802e798180 refactor 2014-02-13 06:44:57 -08:00
Eric House
89435fc688 fix to compile 2014-02-13 06:40:39 -08:00
Eric House
b3cce8c535 reduce verbosity and add info to GameLock logging 2014-02-13 06:33:30 -08:00
Eric House
de7638525a commit sdk-generated file (might be better to ignore it?) 2014-02-13 06:31:31 -08:00
Eric House
44e52278a4 remove unused method 2014-02-12 07:52:39 -08:00
Eric House
218d232798 add dictNames() variant that takes a GameLock 2014-02-12 07:35:49 -08:00
Eric House
61334efa1a fix to generate rather than copy 2014-02-12 07:35:12 -08:00
Eric House
536a1e3b13 install dbg variant too 2014-02-11 22:11:28 -08:00
Eric House
c0e7c0bf88 only log stack for first and last attempts to get lock 2014-02-11 22:11:16 -08:00
Eric House
80c3374728 add build timestamp to about dialog (needs better formatting) 2014-02-10 19:20:35 -08:00
Eric House
ea6da8cd74 add crittercism library 2014-02-10 18:55:16 -08:00
Eric House
9b43fed03f rule for .jar files: copy 2014-02-10 18:32:00 -08:00
Eric House
bdfbb3ffca update bt build, adding new .java file and logic to copy gcm.jar rather than commit a copy of it. 2014-02-10 18:30:19 -08:00
Eric House
6332bbbcbe use ccache 2014-02-10 18:24:42 -08:00
Eric House
339e784d7c fix compile warnings 2014-02-10 18:23:03 -08:00
Eric House
4b293ac89b add Crittercism App ID if available 2014-02-10 07:32:16 -08:00
Eric House
d02481879b catch debug variant up with recent changes and lay groundwork for including crittercism in it. 2014-02-10 07:31:52 -08:00
Eric House
daa59ee03d pass Context to CrashTrack 2014-02-10 07:14:00 -08:00
Eric House
f27394ca03 framework for calling Crashlytics from debug variant 2014-02-10 06:53:39 -08:00
Eric House
f2ad4fd3d5 add StudyList activity and otherwise catch up 2014-02-10 06:19:16 -08:00
Eric House
0d80511a1a remove logging 2014-02-09 19:35:35 -08:00
Eric House
025bcb885b don't move state forward when should be moving back 2014-02-09 19:35:17 -08:00
Eric House
b56d990a04 go back to overriding onPause and onResume, but don't tear down the game unless isFinishing() returns true 2014-02-08 16:50:27 -08:00
Eric House
5e3c26d453 track current BoardActivity instance using HashSet rather than single instance since during transitions there can be two. Fixes asserts from recent commit. 2014-02-07 21:22:13 -08:00
Eric House
0b132661ca change struct name from r to rr for easier searching; no code change 2014-02-07 21:12:45 -08:00
Eric House
a4e65f667d add ok button to about dialog 2014-02-07 07:59:34 -08:00
Eric House
ca8a901bbb add assertion aimed at confirming theory about race-condition based Android crash 2014-02-07 07:41:50 -08:00
Eric House
a388351219 save/load games in onStop/onStart rather than onPause/onResume so we don't do it as often, and specifically not every time the LookupActivity is pushed. This is an experiment. 2014-02-07 07:40:34 -08:00
Eric House
d97784ba13 track which dialog is blocking rather than just that there is one 2014-02-07 07:38:07 -08:00
Eric House
ed9b9646e7 launch app after installing 2014-02-07 07:34:09 -08:00
Eric House
048ae63802 make bad-words reporting dialog blocking so robot doesn't go ahead and move and put its moved dialog up on top of the bad words one before it's dismissed; also change name of string to reflect that it's a format. 2014-02-06 07:22:57 -08:00
Eric House
f6a1e06d41 create myGames group only on upgrade and only if there are existing games to put into it. 2014-02-05 19:46:42 -08:00
Eric House
ca57da44c6 fix duplicate column crash when upgrading 2014-02-05 19:34:42 -08:00
Eric House
18f31ad9d6 up strings for new version 2014-02-03 07:42:59 -08:00
Eric House
46b02d49c1 generated gitignore changes in bt directory 2014-02-03 07:29:12 -08:00
Eric House
6dfaf8127f fix reported crash: assertion copying non-network game 2014-02-03 07:28:38 -08:00
Eric House
f805d7309f modify emacs compile command to use find-and-ant.sh 2014-02-02 11:40:40 -08:00