Andy2
806745683c
removed unused param.
2011-07-13 18:42:16 -07:00
Andy2
cd15a9e6e3
fix, I think, problems with launch mode and non-main activities.
...
singleTop is necessary, as with singleTask we get the whole actvity
stack nuked on every launch. Open a game into BoardActivity then
background Crosswords; when you re-launch from the launcher or hold
the home key you're back to GamesList. But with singleTop incoming
invite schemes would launch a second instance because though there was
one running it wasn't in the same task as the browser firing the url
to redir.php. The solution there is to move the scheme intent from
GamesList to DispatchNotify, which is already handling notifications.
There the addition of a second launch flag means that an existing
instance will always see the launch through its onNewIntent -- under
tests I've come up with so far, anyway.
2011-07-13 18:42:03 -07:00
Andy2
ea205ebf97
when blocking dialogs want to stack, rather than assert, just drop the
...
second one. I'm not sure this is the right thing to do, but it won't
matter except when the assert was firing.
2011-07-13 06:13:38 -07:00
Andy2
1686f3d9a8
make --skip-confirm do what it says, and include it in test script.
2011-07-12 07:13:58 -07:00
Andy2
f4a11d2be5
ignore commit turn request when player has 0 tiles. This catches,
...
awkwardly, the case in a networked game where a player runs out of
tiles in his turn but the server hasn't responded yet to kill the
game. It remains the player's turn and he can make lots of 0-point
moves while waiting. (Making it the next player's turn would be the
right thing to do if that player were always on a different device.)
2011-07-12 07:13:21 -07:00
Andy2
42e7a113b9
tweak logging
2011-07-12 07:09:40 -07:00
Andy2
b28a818a1d
start games via invite in onNewIntent -- required now that singleTask
...
is the mode and working.
2011-07-11 20:06:28 -07:00
Andy2
29c2e0bfd6
fold intent filters together
2011-07-11 20:05:45 -07:00
Andy2
f7a0255dc4
needs to be singleTask, not singleTop, to avoid having a new GamesList
...
activity launched when launch-by-scheme happens when responding to an
invite.
2011-07-11 19:54:41 -07:00
Andy2
7022dbf8d5
set default user name before summoning dialog to change it. For some
...
reason the GamesList activity is being stopped then recreated
occasionally. This prevents the dialog from coming up a second time
when that happens.
2011-07-11 18:37:37 -07:00
Andy2
bd7d608c64
combine the two GamesList Activity elements. For some reason it
...
didn't work before to have the custom URL launch stuff in the existing
one but it does now.
2011-07-10 10:36:14 -07:00
eehouse@eehouse.org
a0ddf2547b
Merge branch 'android_invite' of ssh://xwords.git.sourceforge.net/gitroot/xwords/xwords into android_invite
2011-07-08 21:52:57 -07:00
Andy2
6bb6107b1a
remove logging
2011-07-08 21:50:03 -07:00
Andy2
55376567f6
make main board bitmap static in an attempt to remove, or at least
...
postpone running up against, a memory leak that appears to be in the
java side of things. Googling suggests lots of folks are having
problems with createBitmap (though I can put the createBitmap() call
in a 50-iteration loop and not crash -- may not be the problem after
all.) Without this change I crash the 14th time opening a game. With
it I go 30 and run out of patience. Now that the board is locked in
vertical mode there's little point in recreating the bitmap anyway.
2011-07-08 21:49:51 -07:00
Andy2
8c36727578
tweak new-game dialog strings.
2011-07-08 18:45:41 -07:00
Andy2
7d1a475e61
make players remote by default when adding them to networked games.
2011-07-08 06:25:10 -07:00
Eric House
a6ba233790
Merge branch 'android_invite' of ssh://xwords.git.sourceforge.net/gitroot/xwords/xwords into android_invite
2011-07-08 05:54:34 -07:00
Eric House
421e2a4ae3
fix uninitialized variable
2011-07-08 05:53:08 -07:00
eehouse@eehouse.org
dd8950a826
Merge branch 'android_invite' of ssh://xwords.git.sourceforge.net/gitroot/xwords/xwords into android_invite
2011-07-07 18:51:50 -07:00
Andy2
0c4191805f
Merge branch 'android_branch' into android_invite
...
Conflicts:
xwords4/android/XWords4/res/values/common_rsrc.xml
xwords4/android/XWords4/res/values/strings.xml
xwords4/android/XWords4/src/org/eehouse/android/xw4/jni/CurGameInfo.java
xwords4/linux/scripts/discon_ok2.sh
2011-07-07 18:50:22 -07:00
Andy2
19ba4d8dea
check for null (fixing occasional NPE)
2011-07-07 18:08:09 -07:00
Andy2
2692a8333f
restart screen-on timer when activity resumed -- just in case.
2011-07-07 06:44:58 -07:00
Andy2
7376161dd5
change screen-on preference to a 10-minute interval rather than
...
forever. Should be long enough to allow a move without risking
battery death.
2011-07-07 06:41:44 -07:00
Andy2
23831a1910
forgot a change
2011-07-07 06:27:28 -07:00
Eric House
4f0f3576ff
Merge branch 'android_invite' of ssh://xwords.git.sourceforge.net/gitroot/xwords/xwords into android_invite
2011-07-06 20:04:17 -07:00
Eric House
abf60e027d
fix pattern to pick the right hostid.
2011-07-06 20:02:51 -07:00
eehouse@eehouse.org
ba4d898de1
Merge branch 'android_invite' of ssh://xwords.git.sourceforge.net/gitroot/xwords/xwords into android_invite
2011-07-06 19:12:16 -07:00
Andy2
3ccc323465
update version and change info for next beta
2011-07-06 19:00:06 -07:00
Andy2
7fa86f8007
tweak summary
2011-07-06 18:59:47 -07:00
Andy2
ebdf4cce87
add new preference to keep the screen on when the board's visible (per
...
request). Off by default, of course.
2011-07-06 18:50:11 -07:00
Andy2
b233136df3
copy in manually from android_invite: need the new enums to compile
2011-07-06 18:37:08 -07:00
Andy2
248b341aac
move socket creation inside Thread's run() in attempt to fix too-long
...
UI freeze when deleting individual games.
2011-07-06 18:32:33 -07:00
Andy2
ae0860a047
add a newbie-info for new-from menuitem. Still need one for reset.
2011-07-06 18:24:46 -07:00
Andy2
3fdf15955e
Bug: don't refuse to update preference summary just because it's empty.
2011-07-06 18:21:24 -07:00
Andy2
82552e681a
add timestamps to jni logs
2011-07-06 18:15:34 -07:00
Andy2
d76ca5938b
fix sync-with-relay menu items to work even if timed syncing is
...
disabled.
2011-07-06 18:15:00 -07:00
Andy2
6b773460ec
call server_do before passing message to server to give it a chance to
...
get any pending work done.
2011-07-06 18:14:31 -07:00
Andy2
52510b0b10
force XW_STATE to be 1 byte.
2011-07-06 18:13:59 -07:00
Andy2
859283a8d0
save stateAfterShow as part of serialized game state. Fixes problem
...
where games with more than two devices would hang because server.c
code was dropping messages that comms.c code thought were good and so
ACK'd preventing them from being sent again. They were being dropped
because the game was in the wrong state after displaying a move-made
dialog because the state it was to move to after doing that display
had not been saved.
2011-07-06 18:11:56 -07:00
Andy2
63799a5f4a
add new error message to DEBUG-only printing code.
...
Conflicts:
xwords4/common/comms.c
2011-07-06 18:10:42 -07:00
Andy2
a975a405aa
handle new "no-connect-dead-game" error code the same as an in-play
...
"deleted" message: put up existing dialog offering to delete the game.
2011-07-06 06:50:56 -07:00
Andy2
9ec72d6015
handle new "no-connect-dead-game" error code the same as an in-play
...
"deleted" message: put up existing dialog offering to delete the game.
2011-07-06 06:49:19 -07:00
Andy2
f3ab40519d
add new error message to DEBUG-only printing code.
2011-07-06 06:47:56 -07:00
Andy2
86e3cc7286
When device reconnects to a dead game, just deny the connection with a
...
new error message rather than allow it as if it were a normal game
only to send a game-dead message after. This solves the problem of
how device knows not to put up welcoming message or suggestion to
invite to a game that's suddenly missing players. BUT: this change is
incompatible with existing versions and so needs to get pushed out
before the in-use relay can be upgraded to include this code.
2011-07-06 06:47:25 -07:00
Andy2
928404be50
remove unused enum
2011-07-06 06:15:25 -07:00
Eric House
a3dbde9b88
more dealing with edge cases.
2011-07-05 21:42:03 -07:00
Eric House
98a65d82ed
fix crash in rare edge case
2011-07-05 21:40:13 -07:00
Eric House
d3108aac79
split method in two to provide new API (I'm not using yet)
2011-07-05 21:39:38 -07:00
Andy2
4789bac85e
add new mode that only launches games after the relay says there's a
...
message for them. This is to mimic a common way games are played on
Android and to ensure that there are no points where that style of
play hangs because no device in the game will be "up".
2011-07-04 19:46:12 -07:00
Andy2
999d4c11e7
simple script for watching what messages the relay has pending for a
...
game.
2011-07-04 12:51:27 -07:00
Andy2
4b75174170
save stateAfterShow as part of serialized game state. Fixes problem
...
where games with more than two devices would hang because server.c
code was dropping messages that comms.c code thought were good and so
ACK'd preventing them from being sent again. They were being dropped
because the game was in the wrong state after displaying a move-made
dialog because the state it was to move to after doing that display
had not been saved.
2011-07-04 12:51:00 -07:00
Andy2
0eec455119
change one return type; improve logging
2011-07-04 12:46:48 -07:00
Andy2
8904f37e1a
force XW_STATE to be 1 byte.
2011-07-04 12:45:51 -07:00
Andy2
ab8e4e437b
call server_do before passing message to server to give it a chance to
...
get any pending work done.
2011-07-04 12:37:23 -07:00
Andy2
66d42faead
fix sync-with-relay menu items to work even if timed syncing is
...
disabled.
2011-07-04 12:28:17 -07:00
Andy2
7024718c87
add timestamps to jni logs
2011-07-04 09:38:22 -07:00
eehouse@eehouse.org
8f782070ac
Merge branch 'android_invite' of ssh://xwords.git.sourceforge.net/gitroot/xwords/xwords into android_invite
2011-07-03 09:28:36 -07:00
Eric House
e207e0e142
add option to run only one game at a time in a given room. The idea
...
was to mimic conditions that are creating a bug on-device but it
didn't work. Still, a useful test case....
2011-07-02 23:12:16 -07:00
Andy2
175aace629
fix a couple of rare failures due to race conditions testing or
...
valgrind flushed out.
2011-07-02 13:28:24 -07:00
Eric House
35bfdb1dd6
Merge branch 'android_invite' of ssh://xwords.git.sourceforge.net/gitroot/xwords/xwords into android_invite
2011-06-30 19:44:46 -07:00
Eric House
09b81c6ad7
fix rare crash: don't call PQgetvalue when there are no results.
2011-06-30 19:39:00 -07:00
Eric House
5c5708fa66
try to fix race condition that sometimes means script detects game is
...
over but doesn't communicate to relay: don't consider file done until
have info to sent to relay.
2011-06-30 19:37:37 -07:00
eehouse@eehouse.org
3db7fccb53
Merge branch 'android_invite' of ssh://xwords.git.sourceforge.net/gitroot/xwords/xwords into android_invite
2011-06-30 18:57:53 -07:00
Andy2
ada84cccb3
make invites work with games having more than two players. But: the
...
games themselves don't work! Fix this or disable 3- and 4-device
networked games.
2011-06-30 18:56:51 -07:00
Andy2
36287870d4
add np (num players) param
2011-06-30 18:22:42 -07:00
Andy2
546791d215
custom message when more than one player missing reminding to invite
...
more than one person.
2011-06-30 06:30:05 -07:00
Andy2
0c42da905a
plug memory leak flushed out by auto-juggle code: null dict doesn't
...
mean the end of the list.
2011-06-29 21:43:50 -07:00
Eric House
48ea9e2b28
add preference to juggle players when creating a new game
...
Conflicts:
xwords4/android/XWords4/src/org/eehouse/android/xw4/jni/CurGameInfo.java
2011-06-29 21:43:44 -07:00
Eric House
ef9d359ab9
tweak default param values
2011-06-29 21:38:54 -07:00
Eric House
b4a513ce87
reduce logging; log errno on syscall failure
2011-06-29 21:38:31 -07:00
Eric House
8e31fd88c3
reduce logging; and fix valgrind-found problem using wrong
...
synchronization primative.
2011-06-29 21:37:33 -07:00
Eric House
04740486fb
wrap more logging in ifdefs
2011-06-29 21:35:21 -07:00
Eric House
2b4f439a2f
rough script to parse logs looking for threads that have hung (stopped logging)
2011-06-29 21:32:18 -07:00
Andy2
57cfefb6a9
fix leaks -- that don't really matter as process is exiting, but
...
quiets valgrind.
2011-06-29 18:45:02 -07:00
Andy2
f3a4ff9dfc
use cid for variables of type CookieID everywhere instead of almost
...
everywhere
2011-06-29 18:42:41 -07:00
Andy2
4cb45d3b82
juggle before setting language (makes sense though not demonstrable
...
difference)
2011-06-29 18:30:08 -07:00
Andy2
cd844a5bad
plug memory leak flushed out by auto-juggle code: null dict doesn't
...
mean the end of the list.
2011-06-29 18:28:55 -07:00
Andy2
632980dc98
add preference to juggle players when creating a new game
2011-06-29 06:16:58 -07:00
Andy2
413b2f5b2e
include default language in text in new game dialog.
2011-06-28 19:01:03 -07:00
Andy2
5dd524ef2f
param name for clarity
2011-06-28 19:00:21 -07:00
Andy2
a9d1dc7bdc
add default room name in configure-first case too.
2011-06-28 18:32:32 -07:00
Andy2
363acc228a
use printf so rooms sort numerically
2011-06-28 17:38:59 -07:00
Andy2
b2a7acbdf1
remove echo
2011-06-27 18:59:36 -07:00
Andy2
3db0543994
work in absence of drop-nth-packet param
2011-06-27 18:57:27 -07:00
Andy2
ceeee39c2d
fold it what can from android_invite branch to make relay upgrade test
...
easier
2011-06-27 18:43:42 -07:00
Andy2
8673c6a001
toward being able to verify that upgrading the relay won't hurt
...
in-play games: add ability to pick up games mid-play; don't sleep
before killing a device unless it's only been running less that the
minimum.
2011-06-27 18:32:30 -07:00
Andy2
a96dfb57f6
drop-packet test got an assert because we assumed the effects of a
...
dropped packet. Instead, now treat the connection as broken and
restart.
2011-06-27 18:30:52 -07:00
Andy2
e122953fd5
clean up logging
2011-06-27 18:27:07 -07:00
Andy2
c84722fc22
add ack
2011-06-27 06:45:14 -07:00
Andy2
fffcbb677e
under testing I'm running up against the 1024-files-open limit and
...
dying with an assert. Log something -- but still die as there's
nothing to be done in code except hope some connections don't
reconnect right away. Fixes: 'ulimit -n' or edit 'nofile' param in
/etc/security/limits.conf on the relay host.
2011-06-27 06:20:51 -07:00
Andy2
c2cd3a709a
specify name of database in config file rather than hard-coding it.
2011-06-25 21:32:18 -07:00
Andy2
ffeb94e4bd
start getting rid of super-verbose logging
2011-06-25 21:30:32 -07:00
Andy2
cdc16ee974
variable/method name change only: cookieid->cid
2011-06-25 15:43:52 -07:00
Andy2
38ad3aa81c
cleanup; and: collapse HostRec and socket set into map of socket to
...
HostRec, protecting all accesses with ReadWrite locks.
2011-06-25 15:40:12 -07:00
Andy2
6c121dac57
final set of changes -- all test cases now seem to be passing. Stop
...
duplicating set of sockets owned by a cref, moving it from cinfo into
cref and caching a copy outside when cref is unclaimed (after which no
change is possible until it's claimed again.)
2011-06-24 18:34:34 -07:00
Andy2
df60ec648b
Don't return new error XWRELAY_ERROR_NORECONN as devices don't have it
...
yet.
2011-06-24 18:32:53 -07:00
Andy2
e44ed96691
fix logging: calling read(), not recv()
2011-06-24 18:28:18 -07:00
Andy2
9ff149fe2d
fix race: if we get a cid from the DB while another thread has claimed
...
that cid, then by the time we can claim it there's no longer space for
us. Call new method after the claim succeeds to make sure there's
still room, and if not relinquish and loop back to the DB for another
try.
2011-06-23 19:00:32 -07:00
Andy2
c51e5e41f4
fix ClaimSocket: it was neither marking claims nor checking for marks.
2011-06-23 18:58:50 -07:00
Andy2
63a4e6c953
get rid of per-cref mutex: it's redundant now that access is
...
synchronized. Add method to check if new players are still welcome to
allow fix for race.
2011-06-23 18:57:48 -07:00