Eric House
ff99e89e9d
fix compiler warning
2017-02-22 22:39:32 -08:00
Eric House
c271202faa
make bad phonies alert non-blocking
...
Continue conversion of alerts that required blocking the JNI thread. Now
board_commitTurn() takes a second boolean indicating whether phonies
found have been approved by user. Common code informs user, and if he
approves client code calls board_commitTurn() again. In case where
turn's lost there's no call to make back, but there's the undesirable
change that if a robot moves next its move will be reported on top of
the turn-lost alert. Ideally new alerts would appear under, not on top
of, those that have not yet been dismissed.
2017-02-20 07:20:19 -08:00
Eric House
5f12d1a03b
assign faces to blanks asynchronously
...
Next step in converting util_ methods that required blocking: blank tile
assignment. Now post a query and add a method that the client code can
call when the user's decided. Include enough state (col, row, and
playerNum) so that it's probably pretty safe.
2017-02-18 19:16:32 -08:00
Eric House
ca6edcfc9a
make trade and move confirm non-blocking
...
Probably breaks curses build, but for gtk and Android
turn move and trade confirmation into a two-step process, making
board_commitTurn() non-interactive when called with a second
parameter. The old blocking util methods now return void and it's up to
the client code to interact (on the main thread) then re-call
board_commitTurn() if appropriate.
2017-02-17 08:58:20 -08:00
Eric House
1f2f4506c4
remove unused query option. Less to convert.
2017-02-17 06:30:54 -08:00
Eric House
2a0b21e5e8
make password fetching non-blocking
...
First attempt to stop blocking the jni thread: instead of returning a
password from a util_ method, have it include enough state that the UI
can return, put up a dialog, and then pass that state and the password
back and have them matched up again. I think this will work for the
remaining blocking Alerts too.
2017-02-17 06:23:44 -08:00
Eric House
b96d44393a
add and use boolToStr
...
Just to make log messages a bit more helpful. Should be no behavior
change, and no change in code generated in release builds.
2017-01-22 14:15:29 -08:00
Eric House
8bf65622b5
fix crash duplicating no-address network game
...
An edge case, but: doing "new from" on a game without any connection
types crashed because of an assertion in comms that assumed
addr_setType() was being called on zero-initialized flags, which
shouldn't have been a requirement. Pulled that as well as java code that
added RELAY-type connectivity to any game that had none. If a game has
none, leave it that way.
2017-01-07 07:41:38 -08:00
Eric House
68104bcf83
remove logging
2016-12-19 22:21:51 -08:00
Eric House
33326d38a7
wifi direct: harvest and send mac address
...
Grab and store the local device's mac address. Add p2p as a type of
address, represented by the mac address of the recipient. Include the
local device's address in invitations sent when specified by user. Now
the WifiDirectService class is being passed a packet and the address of
the recipient; it will next need to set up sockets with every device it
encounters and map them to their mac addresses so that it can do a send.
2016-11-14 08:06:53 -08:00
Eric House
e6561cbcac
debugging aids
...
commented-out logging of drawCell, with flags; debug-build checks that
static rects passed to java draw code aren't being used by multiple
threads at once.
2016-11-12 07:20:28 -08:00
Eric House
abf4aa4d80
switch to clang
...
add option, and invoke it, to build jni code with clang rather than gcc.
2016-09-30 11:13:30 -07:00
Eric House
7994c42691
allow board cells to be wider than tall
...
There are some screen dimensions, especially with dual-pane mode, where
the board is just bit narrower than the screen. Rather than have narrow
white borders, allow the cells to take up the slack. The API takes an
upper bound on the ratio of width to height so things shouldn't get too
odd looking.
2016-09-15 20:37:29 -07:00
Eric House
4c923ead08
add isLocal param to server_getCurrentTurn
...
I want to store this information separately in summaries tables so
e.g. games can be displayed sorted by whether it's the local player's
turn.
2016-08-26 06:58:55 -07:00
Eric House
3b24aab8c3
add new jni call board_containsPt()
...
for use debugging layouts/orientation changes later
2016-08-15 17:26:10 -07:00
Eric House
87150c7d91
replace assertion with logging and dropping event
...
Until I figure out why I'm see it, as it's getting in the way of other
things.
2016-08-13 17:16:20 -07:00
Eric House
bf7a38da08
copy more state into board being used for snapshot
2016-08-05 21:19:49 -07:00
Eric House
8b142e4a56
use new board_drawSnapshot() from android
...
BoardCanvas wouldn't render anything without an associated dict via
dictChanged()
2016-08-05 11:51:47 -07:00
Eric House
0c6283ea63
add board_drawSnapshot
...
Toward something that should work with android: pass a potentially
unique draw context into new method that creates a new board just for
the draw and makes its scoreboard and tray disappear.
2016-08-05 10:23:39 -07:00
Eric House
3c0a128266
produce, store and display actual snapshot
...
Done in a way that won't work for Android just to try out the gtk
way. Tweaks and reuses the existing draw context and board, which is
precisely what the android version can't easily do.
2016-08-05 09:42:55 -07:00
Eric House
df6c1e0d3a
make beginDraw return a boolean so can abort
...
When a gtk3 window's shutting down it appears we can't get a cairo_t*
for it. This change makes it possible to turn that fact into aborting
the whole draw operation.
2016-08-04 15:12:05 -07:00
Eric House
eb6fb508bf
fix crash dragging tiles
...
Add new begin() and end() methods around all drawing and get/destroy
cairo context there.
2016-08-03 15:50:17 -07:00
Eric House
2faf9c5334
bug: update lastturn timestamp for single-player games too
2016-07-25 08:38:24 -07:00
Eric House
406eb77f54
post notification (rather than just play sound) when turn comes into
...
boarddelegate but it's not visible
2016-04-14 22:16:18 -07:00
Eric House
8c9e3ce14c
use pthreads mutex to synchronize alloc and free operations in (debug
...
only) mpool. I'm getting assertions about failure to free now that
multiple threads are accessing open games, but I think they're bogus:
due to multiple threads modifying the leak-detection counters. This
seems to fix the assertions I was seeing in mpool_destroy().
2016-04-09 11:54:08 -07:00
Eric House
2ca0fe5ca4
add board_getSelPlayer()
2016-03-06 06:34:49 -08:00
Eric House
4402b81bdf
fix crash (assertion failure) finding words associated with a cell
...
when there's a trade above it on the move stack.
2016-03-04 19:29:42 -08:00
Eric House
841715a78b
pass constant
2016-02-21 08:01:27 -08:00
Eric House
86883eb51a
handle tap on scoreboard by showing last move summary (as happens for
...
long-tap) when option to switch users is disabled.
2016-02-18 07:46:36 -08:00
Eric House
5084e70843
fix bug: if you're iterating through hints and you drag a tile to the
...
left of tray divider (without moving divider) it may still be included
in hinted moves. Fix is to reset engine whenever the set of tiles left
of divider changes.
2016-02-05 07:29:51 -08:00
Eric House
19713a40ad
add param to comms_resendAll to limit type of message sent
...
(e.g. BT). Meant to be used when a single type has become available.
2016-02-02 07:01:48 -08:00
Eric House
efd47d731a
send the correctly calculated hash value, and up strings for another
...
release. This is the minimum required for a new release on top of the
previous one, but not enough if released on this branch!
2016-01-03 20:23:46 -08:00
Eric House
22dde029c8
Merge tag 'android_beta_100' into android_branch
...
ready for release
2016-01-03 11:36:37 -08:00
Eric House
ccb86f0358
0 len is ok
2016-01-01 21:05:28 -08:00
Eric House
6a0bcaee26
add missing parameter
2016-01-01 19:48:22 -08:00
Eric House
ebcae1a523
move hashing into memstream impl, and reintroduce the old/broken
...
treatment of the final 8 bits. I'll need to release a version that
still produces the incorrect hash for compatibility with existing
clients that expect it, but that also looks for the correct hash. When
that's out there I can do a new release that sends the correct hash.
2016-01-01 17:57:14 -08:00
Eric House
4813c95976
cleanup: rename function and remove unused param
2015-12-31 15:47:48 -08:00
Eric House
02d5d26c60
when a move comes in whose hash doesn't match the top of the move
...
stack, go down the stack looking for a match. If it's found, pop down
to that point then apply the move. This fixes stalls in the test
engine when undo is enabled, and so I assume that undos and turns are
somehow coming in out-of-order. Should be rare that this happens.
2015-12-31 06:04:55 -08:00
Eric House
c9264eecac
add debug-only code to assert that the hash on the move stack remains
...
unchanged across a push and pop. Was used to verify memstream.c change
just committed.
2015-12-30 06:31:02 -08:00
Eric House
a2ca381890
remove assert when hashes don't match. As currently implemented, this
...
can happen when somebody does an undo, since the ordering of undos and
moves is not assured. The result is a temporary (I think) stall, where
a move is rejected because the hash doesn't match, but that will be
accepted later when the undo's been processed and the hash will now
match.
2015-12-30 05:59:06 -08:00
Eric House
89138edae1
when dumping stream, preserve the subset of bits in the last word
...
that's real data. This fixes assertions that after popping a move off
the move stack the hash is the same as before it was pushed. It may or
may not be sufficient to fix reported stalls, but it's certainly
necessary.
2015-12-30 05:56:01 -08:00
Eric House
c96861b329
wrap hash-related logging in ifdefs so can be easily turned on
2015-12-29 19:00:30 -08:00
Eric House
5e3f7d0731
remove logging
2015-12-29 18:58:28 -08:00
Eric House
299b8ddc70
assert when hashes don't match. This may be legit, but I need to
...
understand when it can happen because I think it's the cause of games
failing to communicate in the field
2015-12-29 07:11:05 -08:00
Eric House
78d435c8cc
fix what are errors with new compiler
2015-12-29 07:09:50 -08:00
Eric House
7cb1714568
fix compile -- new compiler, probably
2015-12-21 17:46:50 -08:00
Eric House
0b0bd02e79
remove logging
2015-11-20 23:15:24 -08:00
Eric House
87517edd6f
fix counting of messages sent by "Resend messages" menuitem: actually
...
count them, and do so based on new msgNo passed from comms that's
concatenation of channelNo and msgID so that duplicates (over multiple
transports) aren't counted twice.
2015-09-30 06:50:04 -07:00
Eric House
122335c53c
Merge branch 'android_branch' into relay_noconn
...
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
2015-09-17 07:00:04 -07:00
Eric House
b8822f72bc
Change return types to match recent signature change. Apparently the
...
NDK's compiler is configured to be stricter than Ubuntu's.
2015-09-17 06:51:15 -07:00
Eric House
cba1293bec
make return value void since it's never used
2015-09-15 20:54:01 -07:00
Eric House
05d0974823
Merge remote-tracking branch 'origin/android_branch' into android_branch
...
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
2015-09-15 20:46:35 -07:00
Eric House
c8fcc32c2c
When two moves are identical (i.e. a one-letter word that forms two
...
words words) drop one when looking for hints
2015-09-14 08:49:52 -07:00
Eric House
759cd36162
Merge branch 'android_branch' of ssh://git.code.sf.net/p/xwords/git into android_branch
...
Conflicts:
xwords4/android/XWords4-dbg/AndroidManifest.xml
xwords4/android/scripts/mkvariant.sh
2015-09-10 18:34:28 -07:00
Eric House
e5cf0ee4fb
Merge branch 'android_branch' into relay_noconn
...
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
2015-08-19 07:44:17 -07:00
Eric House
255ca56ed7
when no moves found, reset engine and try again. Works around bug
...
where you do "hint", then "prev hint" and get told there are no moves
found only to have the next "prev hint" succeed. This is a hack, but
the right fix is eluding me, and will certainly be riskier.
2015-08-19 07:43:00 -07:00
Eric House
884eda0603
cleanup: use temp ptr to avoid too many dereferences
2015-08-18 08:00:22 -07:00
Eric House
01b746860e
add accessor for current selected player
2015-08-16 09:26:48 -07:00
Eric House
389a09ac1a
Merge branch 'android_branch' into relay_noconn
...
Conflicts:
xwords4/android/XWords4/archive/R.java
xwords4/android/XWords4/res/values/strings.xml
xwords4/android/XWords4/res_src/values-ba_CK/strings.xml
xwords4/android/XWords4/res_src/values-ca_PS/strings.xml
2015-08-13 07:30:55 -07:00
Eric House
3a32d3a17b
return count of messages sent from comms_resendAll(), and post it as a
...
toast so user sees something happened.
2015-08-13 07:05:06 -07:00
Eric House
47954f82d0
add index of sending player to chat transmission, and on receiving
...
side translate that into showing the sender's name in
notification. Not yet done: replacing silly "not me" in chat listing
with same, but now it should be easy.
Conflicts:
xwords4/android/XWords4/archive/R.java
2015-08-12 07:43:20 -07:00
Eric House
8f7267b3ec
add index of sending player to chat transmission, and on receiving
...
side translate that into showing the sender's name in
notification. Not yet done: replacing silly "not me" in chat listing
with same, but now it should be easy.
2015-08-12 07:36:36 -07:00
Eric House
517cfe6fda
bring over saved file format change from relay_conn branch so builds
...
from each will be able to open each other's files.
2015-08-10 06:24:40 -07:00
Eric House
b500a4646d
use different uuid for dbg variant so it's not cross-sending BT
...
messages with other variants, causing among other problems spurious
"deleted on other device" warnings.
2015-08-03 04:50:56 -07:00
Eric House
0a95bc0f42
drop messages using comms methods (e.g. SMS) for which comms hasn't
...
been set up. Fixes assertion firing when SMS messages go to wrong app
(normal vs CrossDbg), though the right fix is to have the two apps
using different ports so they don't get each other's messages.
2015-07-31 22:15:57 -07:00
Eric House
65606607ab
use different uuid for dbg variant so it's not cross-sending BT
...
messages with other variants, causing among other problems spurious
"deleted on other device" warnings.
2015-07-29 19:48:56 -07:00
Eric House
3732321825
fix so -Wundef can be passed -- except that android's headers don't
...
compile then :-)
2015-07-29 19:36:17 -07:00
Eric House
684c7ff3e3
Merge branch 'android_branch' into relay_noconn
...
Conflicts:
xwords4/android/XWords4/archive/R.java
xwords4/android/XWords4/res/values/strings.xml
xwords4/android/XWords4/res_src/values-ba_CK/strings.xml
xwords4/android/XWords4/res_src/values-ca_PS/strings.xml
xwords4/android/XWords4/src/org/eehouse/android/xw4/SMSInviteDelegate.java
2015-07-26 13:22:45 -07:00
Eric House
75cd6c6693
fix logic behind "unable to find move" alert
2015-07-26 13:17:59 -07:00
Eric House
0bb51e8b93
show a toast when hint can't find anything, on the principle that user
...
should see some response to every action.
Conflicts:
xwords4/android/XWords4/archive/R.java
2015-07-26 12:09:15 -07:00
Eric House
dad39eedde
Remove devID from comms address. It's not needed yet, may never be,
...
and I don't want to store it until it is.
2015-07-22 06:16:29 -07:00
Eric House
190ce42b0e
when version check fails, log the version numbers
2015-07-17 07:42:54 -07:00
Eric House
5dc8291981
show a toast when hint can't find anything, on the principle that user
...
should see some response to every action.
2015-07-11 16:24:21 -07:00
Eric House
1eb82d5285
android doesn't send its devid in the nli struct, so don't assert it's
...
there.
2015-07-11 14:27:01 -07:00
Eric House
1423bc933d
rename common file and methods for consistency with android. No logic
...
change.
2015-07-11 08:40:49 -07:00
Eric House
b5ae54f313
use common/native NetLaunchInfo to implement invite-via-relay that
...
works between linux and Android clients. Required renaming so struct
names and names of fields within match in c and java code. The point
is to test this as the foundation of rematch: now you have to type in
a deviceID in order to invite, which clearly sucks for users. Either
that goes away, or it's replaced with something that scans existing
games and lists past opponents as possible invitees.
2015-07-10 23:19:38 -07:00
Eric House
0f33228155
get rematch working on linux, at least for two-device games. (Handling
...
the case where one of several guests wants to rematch is a hard
problem for later.) Requires passing old-style relayIDs (connname plus
device index) when devIDs aren't available, which they may not always
be.
2015-07-06 20:28:16 -07:00
Eric House
fd06bca151
assert stream version being set consistently, not changed
2015-07-06 20:24:45 -07:00
Eric House
33d0db93e8
add some consts
2015-07-06 20:23:22 -07:00
Eric House
8f794fbd32
beginning of support for invite-by-relay (which is mostly interesting
...
for Rematch): works for linux version, provided you know the relayID
of the device you're inviting. Added to common/ a stream-saving
version of java's NetLaunchInfo I'll probably want to use there too
for cross-platform compatibility (there being no jni support for
json.)
2015-07-01 07:10:45 -07:00
Eric House
2e8c7695f3
fix failure to connect using means (e.g. BT) that becomes available
...
partway through a game. Problem was that once a channel was working
with one means we wouldn't fall back to default addressing for the
means for which we didn't have a return address yet. (NOTE: Not yet
fully tested...)
2015-06-11 07:29:47 -07:00
Eric House
90dbd52bfd
On client, when game ends locally set turn to -1 (nobody) so that
...
display won't be confusing during the interval before the server
receives the move and responds with a game-over message.
2015-06-10 07:35:39 -07:00
Eric House
f0c3c11dc8
invalidate all tiles after committing a turn in order to force redraw
...
of the Pts. display in case where fewer than seven tiles remain and
the board isn't being switched.
2015-06-10 07:31:00 -07:00
Eric House
e66260950e
change final score formatting so it can be properly localized.
...
Note: because the substitution is done in common code I can't use the
positional specifiers (%1$s vs %s) and so this breaks the generated
"translations". The scripts that do the generation need to be fixed to
understand the formatted="false" attribute.
2015-05-13 07:51:32 -07:00
Eric House
1d6d8e46a3
add missing <CR> to game history (game over case only)
2015-05-13 06:36:43 -07:00
Eric House
e52d5c4077
fix crash sorting tiles when there are fewer to sort than there is
...
space to the left of the divider, i.e. when the game's nearly over.
2015-04-07 20:20:40 -07:00
Eric House
669ef0745b
increase buffer size to remove overlow formatting history in French
2015-03-25 05:45:13 -07:00
Eric House
75a805634f
increase buffer size so French strings don't overflow and get
...
truncated.
2015-03-19 06:28:40 -07:00
Eric House
5f33d99c2e
toward making full use of getQuantityString(): add util method to pass
...
quantity through to java world, use it, convert English <string>
resources to <plurals> (using python script) based on parallel changes
in French, and modify callsites to call getQuantityString() where
R.string.xxx became R.plurals.xxx.
2015-03-18 21:23:30 -07:00
Eric House
f2f5fb22e6
use new comms header to transmit isServer bit
2015-02-23 18:28:31 -08:00
Eric House
86d8a46da2
Merge branch 'android_branch' into android_multi2
...
Conflicts:
xwords4/common/comms.c
2015-02-18 19:40:36 -08:00
Eric House
b23c4d0a73
change comms header format to add a version and flags, marking with an
...
almost unique 16-bit quantity. 1 in 2^16 new games will fail because
its connID will match, but that's ok in part because it can only
happen during the time between when this is released and follow-on
version that assumes all older versions are gone.
2015-02-18 19:19:36 -08:00
Eric House
159a1a8dd2
use TAGFMT stuff for comms_resendAll()
2015-02-17 20:45:39 -08:00
Eric House
615ec72ea7
fix channelNo equality test so it doesn't break relay games, which
...
connect a bit differently.
2015-02-10 07:26:23 -08:00
Eric House
72a1d8b7d4
clear any server bits that happen to have been set in older games.
2015-02-10 07:05:34 -08:00
Eric House
cf4431402b
additional check for misdelivered messages that fixes
...
three-participant SMS games on a single device: if message arrived on
a different channel from what its header says it was meant for, drop
it.
2015-02-10 06:55:08 -08:00
Eric House
ad6be1bb7e
add debug-only "tag" to open games so logging can more easily track
...
what's going on when multiple participants in a single game are on the
same device. But for a couple of strings passed into the jni the
changes are only in DEBUG code.
2015-02-09 19:15:43 -08:00
Eric House
a34f4e4954
don't save unset channelSeed
2015-02-09 07:28:11 -08:00
Eric House
9e403ac6b2
add assert around the new bit that's -- bitten -- me once already
2015-02-09 06:46:34 -08:00
Eric House
5a28f8dedf
fix recent message header hack to not break addressing of messages
2015-02-08 18:42:38 -08:00
Eric House
88dd25fb21
fix channel comparison so messages actually get deleted after they're
...
ack'd.
2015-02-08 13:39:35 -08:00
Eric House
fb011624bb
add another assertion meant to find threading problems, and fix assert
...
firing because flag was set too late and sometimes bypassed.
2015-02-08 10:37:54 -08:00
Eric House
7e634ecc64
hijack a bit from channelNo to indicate whether message sender is
...
server or guest so that sender can tell when it receives a message
from itself (and reject it.) This fixes a lot of confusion in testing
where both participants in a networked game are on the same device,
but might also work around e.g. relay bugs.
2015-02-08 09:58:34 -08:00
Eric House
c6b42c539c
add assert to ensure there are no thread issues: mutex may be required
...
if the assert winds up getting hit.
2015-02-08 07:51:08 -08:00
Eric House
17307f910b
fix problem with misdelivered message forever locking out future
...
messages: when comms thinks a message is an init but server drops it,
give comms that info so it can remove it and give the next one a
chance.
2015-02-07 13:24:09 -08:00
Eric House
f039ee8338
reject message for client that arrives for server rather than asserting
2015-02-07 13:20:47 -08:00
Eric House
cf3c219b69
fix non-DEBUG compile
2015-02-07 12:54:46 -08:00
Eric House
951f5462b3
remove assert. Can't always get forceChannel right on creation, and
...
it's mean to be advisory.
2015-01-12 07:23:50 -08:00
Eric House
688b3944bb
fixes to invite: don't allow non-servers to invite; have common code
...
inform of number of missing even when it hasn't dropped to 0 (so
second invite can be sent for 3+ device games); take down older alerts
before posting new (again since number of missing may have changed)
2015-01-05 07:43:45 -08:00
Eric House
4701fe2b90
pass in number of devices already connected so forceChannel can be set
...
more correctly; put up alert when device rejects an invitation as a
duplicate.
2015-01-03 09:50:07 -08:00
Eric House
28bfa3c904
make forceChannel part of CurGameInfo rather than comms, since Android
...
needs to save it there on receipt of an invitation (doesn't create
full game with comms until later.) Passes discon2 tests and seems to
work on a single Android device. (Haven't tested inviting on Android
yet.)
2014-12-29 07:39:28 -08:00
Eric House
897c4d5786
add param to force a client to connect to host requesting a particular
...
channel. Works well enough that relay test script works. Not yet
integrated for let alone tested on Android.
2014-12-21 17:40:00 -08:00
Eric House
f0cf77d7d6
fix overwriting of addresses that happened for most (relay-only) games
...
run by my test script: match records based on channel number only.
This has yet to be tested on multi-addressing Android builds.
2014-12-10 07:54:50 -08:00
Eric House
5935681b82
in getDestID, deal with possibility game was consumated via a
...
non-relay channel, and allow client to use HOST_ID_SERVER.
2014-12-05 06:19:02 -08:00
Eric House
a6f9f6608a
drop relay connect meta-messages (as well as game messages) when relay
...
send is disabled.
2014-12-02 06:52:48 -08:00
Eric House
53bfe9812d
add const
2014-11-24 07:52:03 -08:00
Eric House
a1cdef6ad8
fix log format
2014-11-24 06:30:58 -08:00
Eric House
142861656e
don't send when channel address doesn't have the right type yet
2014-11-21 22:53:48 -08:00
Eric House
fbea67e479
don't kill relay when bluetooth turned off: pass comms type into
...
comms_transportFailed()
2014-11-20 07:12:25 -08:00
Eric House
1d1af9ffb3
fix some asserts: we have BT working now
2014-11-14 07:06:02 -08:00
Eric House
f2ecefd573
copy bt address info too
2014-11-13 07:27:03 -08:00
Eric House
74afdbd8b6
add more asserts
2014-11-12 06:52:58 -08:00
Eric House
c008f55133
add invite button only if I'm a host and am missing players
2014-11-12 06:52:40 -08:00
Eric House
0e2bbfc1ad
augment addresses even when message received is a duplicate. Now games
...
using (fake) SMS and relay work whichever of the address modes is
disabled during the game, on either side. At least for two-device
games.
2014-11-11 07:46:01 -08:00
Eric House
c087824b47
snapshot with a bit of debugging added, mostly to tranfer to another machine
2014-11-07 20:26:02 -08:00
Eric House
8e616095ad
add a bit more logging of channelNos
2014-11-06 20:28:51 -08:00
Eric House
70f4541bbe
Merge branch 'android_branch' into android_multi2
...
Conflicts:
xwords4/common/comms.c
2014-11-06 20:09:20 -08:00
Eric House
a34a859d18
log channelNo more consistently
2014-11-06 18:44:19 -08:00
Eric House
540d3e9622
wire disabling checkboxes into comms. They work -- and show that
...
multi-addressing needs debugging still.
2014-11-06 06:35:28 -08:00
Eric House
b1de8663d6
fix to compile with DEBUG undefined
2014-11-06 06:32:00 -08:00
Eric House
2426e04a70
fix overwriting of address info so that, AFAICT, both address types
...
are successfully being used through much of a test game.
2014-11-05 21:57:25 -08:00
Eric House
8aae7ae10a
fix crash: don't use comms before initialized
2014-11-05 07:49:17 -08:00
Eric House
17bc0ab47c
snapshot of work toward communicating when two addresses are in use.
...
An invitation works with relay and (fake) SMS on, and the invited
client connects successfully using both (the second to arrive being
correctly identified as a dupe.) While the game can be played after,
only SMS messages are being received. And opening a saved game
crashes.
2014-11-05 07:41:20 -08:00
Eric House
e1a10508e1
when preprocessing a message, limit search to the address type of the
...
channel it came in on if known.
2014-11-02 17:24:37 -08:00
Eric House
b624867cb4
add addr_rmType()
2014-10-28 08:03:19 -07:00
Eric House
1789d442ba
let me look at another player's tiles, regardless of pref setting,
...
when game is over
2014-10-27 19:24:22 -07:00
Eric House
2163d25a27
let me look at another player's tiles, regardless of pref setting,
...
when game is over
2014-10-27 19:23:52 -07:00
Eric House
93f0b626af
snapshot: invite sent by NFC connects two devices using relay with BT
...
ability passed too (though not yet used.)
2014-10-27 07:51:25 -07:00
Eric House
c3e7b12103
merge android_branch
2014-10-23 06:33:28 -07:00
Eric House
51a1ddfe39
include robot name in report of his score
2014-10-23 06:32:24 -07:00
Eric House
878a16b3bc
snapshot: android compiles, and works well enough to exchange moves
...
via relay! Lots of changes, mostly around treating connTypes as a Set
inside the java world. Jni to translate to that is a pain.
2014-10-16 06:45:24 -07:00
Eric House
fe4c7b52f2
snapshot: relay test script works with a second address type set
...
(though with its actual transport stubbed out). Android doesn't even
compile.
2014-10-15 07:26:18 -07:00
Eric House
52465b3e1e
merge android_branch
2014-10-14 06:57:52 -07:00
Eric House
c73eec567b
fix some const confusion the stricter android gcc found
2014-10-14 06:24:41 -07:00
Eric House
0362bf5cc9
Merge branch 'android_branch' into android_multi2
...
Conflicts:
xwords4/common/board.c
xwords4/common/comtypes.h
xwords4/common/model.c
xwords4/common/strutils.c
2014-10-13 07:03:20 -07:00
Eric House
b12d12590a
don't memcpy 0 bytes
2014-10-09 21:21:41 -07:00
Eric House
4eb836ab2b
fix to compile -- graft missed a constant defined earlier
2014-10-09 21:21:27 -07:00
Eric House
badc40f90b
move dividerLoc into model and use to limit sorting to tiles to its
...
right
2014-10-09 20:09:24 -07:00
Eric House
195371ea2e
as proof of concept, skip the first 3 tiles when sorting newly
...
assigned. Later '3' will be replaced by the location of the tray
divider, but that has to be moved from board to model first.
2014-10-09 20:08:41 -07:00
Eric House
c98a5cd5f0
move dividerLoc into model and use to limit sorting to tiles to its
...
right
2014-09-30 05:57:21 -07:00
Eric House
1346aa6ee5
as proof of concept, skip the first 3 tiles when sorting newly
...
assigned. Later '3' will be replaced by the location of the tray
divider, but that has to be moved from board to model first.
2014-09-29 20:04:54 -07:00
Eric House
93526d38d7
cleanup (version upgrade test works)
2014-09-25 22:24:09 -07:00
Eric House
43bd3c018a
make an addr's conType a bitfield rather than holding a single value.
...
Works for large numbers of relay games in test, but will not yet
actually hold more than one value. Should be safe to merge to main
branch once stream upgrade is verified.
2014-09-25 20:05:37 -07:00
Eric House
aa566ad1f0
call util_informMissing when the pendingPlayers count drops to 0
2014-09-25 06:36:07 -07:00
Eric House
3668b7d8a7
merge android_branch -> android_shipbt
2014-09-24 20:51:23 -07:00
Eric House
1e80109c3e
add assert, and don't pass pendingRegistrations to clients -- it confuses them
2014-09-24 19:33:59 -07:00
Eric House
743d532fc7
putting back recent change: this works for automated test and gtk
...
manual app. I'm not sure what's up with pendingRegistrations but it
needs more studying before I can change it.
2014-09-24 19:16:06 -07:00
Eric House
64b30b68d2
merge android_branch -> android_shipbt
2014-09-23 21:33:57 -07:00
Eric House
3d6f972e9e
fix number of missing players not being calculated correctly
2014-09-23 21:30:31 -07:00
Eric House
a485480496
make divider wider
2014-09-22 07:05:45 -07:00
Eric House
6f07098cf3
return succes from server_initClientConnection()
2014-09-14 13:42:11 -07:00
Eric House
7d8b9b4270
return succes from server_initClientConnection()
2014-09-14 13:41:33 -07:00
Eric House
4d2f49d33f
when sending and don't have an address for channel yet, send the one
...
comms was created with, which is what client will have to do anyway.
2014-09-14 13:41:12 -07:00
Eric House
b333e3959f
remove assert: it's fine to close without saving
2014-09-10 06:37:32 -07:00
Eric House
9e86874e77
catch bt version up
2014-08-27 20:23:57 -07:00
Eric House
8407d3b300
cleanup and list changes
2014-08-26 22:17:34 -07:00
Eric House
d8266f6a2c
tweak title and body of notification
2014-08-26 21:53:28 -07:00
Eric House
88248131da
show new client-formatted turn summary in notification; remove old
...
common-formatting code.
2014-08-26 21:37:33 -07:00
Eric House
2d08848715
snapshot: toward having a better description of the last move in
...
notifications.
2014-08-26 06:55:26 -07:00
Eric House
e42dd971cb
Hide crosshairs once drag leaves the initial cell UNLESS a tile is
...
being dragged
2014-08-21 07:51:06 -07:00
Eric House
b77d529099
fix linux-side compile errors
2014-08-21 07:15:20 -07:00
Eric House
d921a386d5
remove logging
2014-08-19 07:21:02 -07:00
Eric House
e998fbfcba
log less
2014-08-09 17:11:35 -07:00
Eric House
56336f7178
double the max size of a tile, fixing board not using full screen in
...
portrait mode on Nexus 10.
2014-07-24 20:36:37 -07:00
Eric House
a902bdcbad
limit width of scoreboard too
2014-07-17 21:31:17 -07:00
Eric House
d51a5e67f0
fix for super-wide screen: tiles are never wider than tall. Next:
...
scoreboard.
2014-07-17 08:01:00 -07:00
Eric House
40d63be58b
too much logging
2014-06-24 08:18:42 -07:00
Eric House
c2c81dbbf1
use tmp model to find words crossing a point to avoid undoing pending turns
2014-03-20 18:52:57 -07:00
Eric House
b869940997
fix another 64-bit bug, this one prevening opening new SOWPODS.
2014-03-12 19:24:00 -07:00
Eric House
2bb9a12b63
add missing (for android build) header
2014-03-11 22:04:30 -07:00
Eric House
d1a9b716bb
protect refcount operations with mutex
2014-03-11 22:01:11 -07:00
Eric House
fbcd953a3e
define as void instead of <empty>
2014-03-11 19:38:51 -07:00
Eric House
7d8f5844bd
fix to compile without DEBUG defined
2014-03-11 19:38:08 -07:00
Eric House
a3e9562654
put related fields together -- no code change
2014-03-11 07:02:10 -07:00
Eric House
a4302897e2
enlarge dictmgr to track a compile-time defined number of dicts
2014-03-10 21:01:24 -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
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
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
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
9d174740c8
don't show "send pending messages" menuitem when there are none
2014-03-01 16:15:35 -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
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
39983f65b6
remove logging
2014-02-27 21:44:25 -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
0b132661ca
change struct name from r to rr for easier searching; no code change
2014-02-07 21:12:45 -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
e34cc9007d
fix problems with opening and using wordlists on 64-bit linux by
...
making XP_U32 32 rather than 64 bits. Duh. Do same on Android jni just
in case.
2014-01-07 06:58:20 -08:00
Eric House
b43855a313
fix curses build for 64bit compile and to use common layout (meaning
...
tray is now under the board unstead of to the right). Works on 64-bit
system at least for non-networked games.
2014-01-05 13:04:59 -08:00
Eric House
3f67afaefb
replace tabs with spaces; no code change
2014-01-05 12:57:46 -08:00
Eric House
f46f8ed560
cleanup
2013-12-30 07:08:42 -08:00
Eric House
b2b4c2a1f5
fix android compile errors
2013-12-27 19:32:56 -08:00
Eric House
762945857e
fix to work for standalone games too
2013-12-19 07:59:00 -08:00
Eric House
2a47c91a91
add gi_setNPlayers()
2013-12-17 21:54:02 -08:00
Eric House
de41802f54
rename variable so I don't trip up again
2013-12-17 21:08:27 -08:00
Eric House
f1f13c65a2
don't overwrite gameID
2013-12-16 08:05:56 -08:00
Eric House
4420049bd0
remove duplicate lines (added by merge?)
2013-12-16 08:05:35 -08:00
Eric House
b5d6c513a6
add canUndo to GameStateInfo and use to hide the undo menu
2013-12-03 07:06:48 -08:00
Eric House
94216a5fb9
add canTrade to GameStateInfo, pass through to java world, and use to
...
determine whether to show trade menuitem
2013-12-01 21:53:41 -08:00
Eric House
9fa9ba643f
fix linux crash when timers enabled: clear timer while taking down board
2013-12-01 18:50:18 -08:00
Eric House
fc6d6ec707
use local variable
2013-12-01 18:37:21 -08:00
Eric House
6875eaa10a
don't draw timer if it has an empty rect
2013-12-01 18:32:51 -08:00
Eric House
9f22386bf6
another assert
2013-11-29 10:15:22 -08:00
Eric House
0cc45ad865
add new field canHideRack to GameStateInfo and use it to disable menu.
2013-11-17 13:54:21 -08:00
Eric House
14c7b7370a
fix layout bug where board overlapped tray
2013-11-16 18:31:14 -08:00
Eric House
088dd1bd75
center board when it must be narrower than screen
2013-11-15 20:46:22 -08:00
Eric House
7d1a1228f0
fix bug where scrolling used when shrinking would suffice
2013-11-14 06:56:11 -08:00
Eric House
c9ba7b2fe1
When timer fires for pen held on board, don't do anything if we're in
...
trade mode.
2013-11-10 07:08:49 -08:00
Eric House
dfdbd9a8a2
pass scoreWidth separately into formatting code so space can be left
...
for network status icon.
2013-11-09 05:34:23 -08:00
Eric House
38613a85d3
make active rect for empty board 3x3 for a bit more context
2013-11-08 06:34:41 -08:00
Eric House
a26dced506
drawing tray tiles can fail, e.g. when font info not yet available, so
...
only clear bits when successful. Fixes problem where tray didn't get
drawn until tiles were somehow invalidated.
2013-11-07 07:29:54 -08:00
Eric House
bb80cdfb08
Merge branch 'android_branch' into android_thumbnail
...
Conflicts:
xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardCanvas.java
xwords4/android/XWords4/src/org/eehouse/android/xw4/jni/XwJNI.java
2013-11-07 05:25:51 -08:00
Eric House
499e07d84b
follow convention: width usually comes before height
2013-11-05 06:38:48 -08:00
Eric House
9c9a04025a
Merge branch 'android_branch' into android_thumbnail
...
Conflicts:
xwords4/android/XWords4/src/org/eehouse/android/xw4/jni/XwJNI.java
2013-11-04 06:20:53 -08:00
Eric House
9f1b0c5121
Specify relative height of scoreboard and tray in board_figureLayout,
...
and allow those to be 0.
2013-11-04 06:19:33 -08:00
Eric House
5a65bca12a
add board functions to figure layout (position and size of board,
...
tray, etc.), removing need for each client to do it itself.
2013-11-03 12:12:25 -08:00
Eric House
b9d0469cfe
fix OFFSET_OF ptr size to quiet compiler
2013-11-01 19:09:05 -07:00
Eric House
d7a1f53157
Merge branch 'android_branch' into android_thumbnail
...
Conflicts:
xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardView.java
2013-10-31 08:13:39 -07:00
Eric House
182ea7f862
make it possible to set DrawCtxt after opening/creating game
2013-10-31 08:06:44 -07:00
Eric House
88af10552e
don't try to draw with null dctx
2013-10-31 06:35:00 -07:00
Eric House
26f5a0b269
add two out params giving number of cols and rows
2013-10-29 07:50:12 -07:00
Eric House
88b380503e
add function, not compiled by default, to return bounding rect of all
...
non-empty tiles. As a test, add menu that uses it to grey out that
region.
2013-10-27 21:51:30 -07:00
Eric House
53e6db5683
remove return from middle of function
2013-10-27 21:47:49 -07:00
Eric House
8fa5e3e4bd
drop duplicate packet rather than asserting
2013-09-11 07:30:12 -07:00
Eric House
a25d664eb5
Merge branch 'from_android_beta_65' into android_branch
...
Conflicts:
xwords4/android/XWords4/res/raw/changes
xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardActivity.java
2013-09-09 08:01:28 -07:00
Eric House
94b2eddda6
fix crash by adding byte protocol expects
2013-09-09 07:42:00 -07:00
Eric House
da3f62729b
Merge tag 'android_beta_64' into android_branch
...
beta 64
2013-08-07 06:18:15 -07:00
Eric House
a38fd0e96c
fix too-short tray on 10" tablet by making height a 16-bit value, not 8-.
2013-08-06 21:56:10 -07:00
Eric House
1f877c7567
remove logging
2013-07-29 07:29:01 -07:00
Eric House
a191c6fc2a
don't add chats to queue at len 64 rather than 128
2013-07-22 06:12:06 -07:00
Eric House
573a87993e
Don't propogate chat when queue too full. This *should* only impact
...
tests since users won't keep chatting at a non-responsive friend.
2013-07-20 08:01:56 -07:00
Eric House
27d9f3de45
Don't enable chat when more than 128 messages are in queue to prevent
...
an extremely unlikely cause of stalls -- and make tests trip over full
queues less often.
2013-07-18 07:37:45 -07:00
Eric House
62dacb83d8
fix to compile when DEBUG not defined
2013-07-16 08:17:46 -07:00
Eric House
ab1ae7c9ad
remove logging
2013-07-12 08:19:53 -07:00
Eric House
9e358ad413
don't insert a new message in queue if it's identical to the one
...
currently at the end. This mostly happens when devices are making
several initial client connection attempts before succeeding.
2013-07-12 07:34:12 -07:00
Eric House
a522266ce4
add message checksumming for android too by making it part of util
...
(compiled out by default)
2013-07-10 08:05:47 -07:00
Eric House
5462a05692
Merge branch 'gtk_multigame' into android_branch
2013-07-09 19:35:26 -07:00
Eric House
bf1cdf225c
print queue less frequently
2013-07-09 19:32:49 -07:00
Eric House
79f07e8751
cleanup
2013-07-09 07:19:20 -07:00
Eric House
d50c808f96
Merge branch 'android_branch' into gtk_multigame
...
Conflicts:
xwords4/android/XWords4/src/org/eehouse/android/xw4/DlgDelegate.java
xwords4/common/comms.c
xwords4/linux/cursesmain.c
xwords4/linux/cursesmain.h
xwords4/linux/gtkmain.c
xwords4/linux/gtkmain.h
xwords4/linux/linuxmain.c
xwords4/linux/main.h
xwords4/linux/scripts/discon_ok2.sh
xwords4/relay/xwrelay.cpp
(Note: The curses app crashes on exit with mempool assertions, but that's a problem before the merge.)
2013-07-09 07:18:00 -07:00
Eric House
a3de759d9e
fix to compile on Android when DEBUG set
2013-07-07 19:40:07 -07:00
Eric House
923d41e0ee
fix to compile when DEBUG not set
2013-07-07 13:17:26 -07:00
Eric House
bbac923f68
assert queueLen at the point where it'll be easier track why it's overgrowing
2013-07-05 21:32:41 -07:00
Eric House
e6248210a5
when formatting final scores, print all players with top score as
...
Winner (fixing bug that occurred in case of a tie)
2013-07-04 12:37:10 -07:00
Eric House
7229535be7
insist on non-0 channel ID *net of mask*; don't send acks when we
...
don't have a connID yet, as this confuses the server. This fixes
assertions in testing that were pretty common when chat was enabled;
it may also fix the reported problem on Android that games get hosed
when people are using chat, as the server's response (without the
assert) was to add a new channel.
2013-07-03 07:39:05 -07:00
Eric House
3364dcbf46
remove unused enum
2013-07-03 07:26:23 -07:00
Eric House
858d00332a
when an initial message from a client arrives with channel already
...
set, drop it (after asserting in debug code.) I'm not yet sure why
this happens, but giving it a new channel is not the right move.
2013-07-02 18:49:48 -07:00
Eric House
1f63745e34
add more logging in search of channelNo bug
2013-07-01 07:54:38 -07:00
Eric House
c77021231c
print checksums of sent and received messages
2013-06-30 08:33:29 -07:00
Eric House
b31858ee5e
log rather than assert when hostid changes -- though I'm not seeing
...
this now that the relay doesn't send packets to the wrong device
2013-06-26 00:42:55 -07:00
Eric House
6d22c3ab86
tweak logging
2013-06-22 05:51:29 -07:00
Eric House
d41c1a4ca8
add new param so pending text can be drawn differently when it's not
...
the player's turn.
2013-05-30 07:17:13 -07:00
Eric House
8e8b4755b3
bring in changes from gtk_multigame to remove assertion fail when
...
connname gets changed by relay due to failure to ack it (which happens
when a large number of games is being run in a test.)
2013-05-30 06:48:29 -07:00
Eric House
31c443e4b1
Merge branch 'android_branch' into gtk_multigame
...
Conflicts:
xwords4/android/XWords4/src/org/eehouse/android/xw4/GCMIntentService.java
xwords4/android/XWords4/src/org/eehouse/android/xw4/RelayService.java
2013-05-22 07:01:08 -07:00
Eric House
b58fe30ecc
add synonyms to tile counts/values summary
2013-05-14 22:00:22 -07:00
Eric House
7d8cddb31f
Merge branch 'android_branch' into gtk_multigame
...
Conflicts:
xwords4/linux/gtkmain.c
xwords4/linux/linuxmain.c
xwords4/relay/xwrelay.cpp
2013-05-08 07:37:55 -07:00
Eric House
5a026ffda3
merge android_wordlists (local branch)
2013-05-01 06:39:31 -07:00
Eric House
541fc546ab
remove that bit from flags -- since we already do the right thing for it.
2013-04-20 19:46:35 -07:00
Eric House
07cfdad699
fix to support synonyms within specials too -- for linux only so far.
...
Seems to work, though the dawg2dict.pl script is broken.
2013-04-09 07:43:04 -07:00
Eric House
3a628f4375
load new-format dict into linux client, display default faces
...
correctly, and search using alternate as well as default faces. Next:
support for alternate specials.
2013-04-06 11:43:57 -07:00
Eric House
567cd2913a
Merge remote-tracking branch 'origin/android_branch' into android_branch
2013-04-06 05:32:10 -07:00
Eric House
bd1a909321
assert, in debug-only code, that saved moves alternate between players
...
and are ordered. I've seen games in the wild with three moves in a
row by the same player and want to catch this in testing.
2013-03-01 07:49:26 -08:00
Eric House
2bfda1b56d
function to print StackMoveType
2013-02-22 21:34:53 -08:00
Eric House
d78a4979da
HACK: if gi's notion of gameID is out of sync, force it in (logging
...
the fact). I'm not sure why but this is required sometimes on
Android.
2013-01-28 07:01:49 -08:00
Eric House
3e723c72c5
call comms_stop() before closing (removing from memory) a game.
2013-01-28 06:52:32 -08:00
Eric House
3be45a67f7
fix erroneous asserts: it's uncommon but ok for a device to get
...
assigne a second connname. (Cause: failure of relay to receive the
device's ACK.)
2013-01-26 18:56:53 -08:00
Eric House
c839db4a25
disconnect from relay no matter what the state
2013-01-22 06:12:55 -08:00
Eric House
f6e7ece578
add comms_stop() and an assert to make sure it's called. Explicit
...
stop and a message to the relay when using a UDP socket makes up for
there being no notification of connection closing.
2013-01-16 06:31:09 -08:00
Eric House
565b742971
snapshot -- connects to relay but doesn't play yet.
2013-01-07 08:00:47 -08:00
Eric House
e0dc83ed70
rest of what I just meant to commit.
2013-01-05 16:08:47 -08:00
Eric House
4af30c534c
snapshot. New game button works and game gets saved in DB. Next: display and open from DB.
2013-01-05 16:08:19 -08:00
Eric House
78670e9650
fix bug: include wordlist name in bad word info passed into util function
2012-12-29 07:48:31 -08:00
Eric House
83b1d4c364
fix compiler warnings
2012-12-08 06:40:21 -08:00
Eric House
5463535265
don't increase backoff if there wasn't actually anything to send.
2012-11-14 05:42:47 -08:00
Eric House
c4df31892e
Fix occasional infinite loop of devices sending and receiving the same
...
message over and over when getting updated by GCM. The problem
occurred when one device had an un-ACKable initial message still in
its queue. I call resendAll a lot, which caused that message to get
resent to the other game which then replied without being able to ACK
it so it remained to be sent again. This would continue until users
moved forward in the game. The fix is to add a backoff timer to
resendAll() so that it can't loop. The timer is reset when an ackable
and new message is received, meaning there's been a change in what's
available to resend. And since users calling resendAll manually
expect it to do something, add a force param that ignores the backoff.
seems to fix the problem (but needs a lot of testing.)
2012-11-13 21:25:03 -08:00
Eric House
cf8d30ce5d
tweak logging; fix uninitialized debug-only variable
2012-11-13 21:18:52 -08:00
Eric House
57ea768aaf
refuse to send 0-length messages. That may happen only when the stupid
...
curses client calls server_initClientConnection over and over, but
reduces unnecessary messaging in that case at least.
2012-11-13 07:22:48 -08:00
Eric House
43b1e219f3
add a bit more logging to comms
2012-11-13 06:14:36 -08:00
Eric House
1316ae4b67
Fix relay devid protocol to deal with case where client submits a
...
ID_TYPE_RELAY id that's not in the devices table (as has happened when
a device switches relay URLs during testing, but might also happen if
I have to delete an entry from the devices table.) In that case,
return ID_TYPE_NONE to the client, which will be its clue to delete
its ID_TYPE_RELAY id and submit the platform-specific id again.
Note: android won't compile this revision thanks to util.h change
2012-11-10 15:05:44 -08:00
Eric House
f1ee77882b
Send devid with RECONN as well as CONN so games present when device
...
upgrades can also use GCM. Tested on relay but not device.
2012-11-09 06:54:12 -08:00
Eric House
9ad28908bb
assert enum within range
2012-11-06 07:07:14 -08:00
Eric House
03108f311a
Merge branch 'android_branch' into android_gcm
2012-11-05 06:14:21 -08:00
Eric House
59937b8514
modify how devids are handled on the relay and the protocol through
...
which they're communicated to the device. Device is expected to have
a platform-specific notion of ID which the relay stores in a new
devices table and indexes with a 32-bit number which is returned to
the device -- which is encouraged but not required to use it in lieu
of the longer ID in future communications. Modify linux client and
test script to use the relay-supplied id. Some of this is commented
out for now.
2012-11-03 10:58:01 -07:00
Eric House
e66ddc3765
make stream_catString work with null ptr
2012-11-01 21:08:58 -07:00
Eric House
7135e30fe9
add missing ifdef
2012-11-01 07:58:36 -07:00
Eric House
3469975d2a
add, still disabled by compile-time flags, code to transmit device ID
...
(e.g. ID Android devices get via GCM) to relay and to associate it
there with messages that need to be delivered.
2012-10-30 07:01:47 -07:00
Eric House
e7d5be06e9
fix crash when old client connects to new host by making host use the
...
right version test in deciding what to send.
2012-10-27 08:52:54 -07:00
Eric House
b097e0825e
fix linux crash do to casting problem
2012-10-26 06:49:15 -07:00