mirror of
git://xwords.git.sourceforge.net/gitroot/xwords/xwords
synced 2025-01-16 15:41:16 +01:00
fix bug resulting in invitation droppage
Recent changes in how nli address sets were stored led to rejecting incoming invitations when BT had been removed (e.g. on emulator) because I didn't notice the removal when validating.
This commit is contained in:
parent
f8f3082c0f
commit
dc7064a168
4 changed files with 17 additions and 5 deletions
|
@ -1,4 +1,4 @@
|
||||||
/* -*- compile-command: "find-and-gradle.sh inXw4Deb"; -*- */
|
/* -*- compile-command: "find-and-gradle.sh inXw4dDeb"; -*- */
|
||||||
/*
|
/*
|
||||||
* Copyright 2009 - 2020 by Eric House (xwords@eehouse.org). All rights
|
* Copyright 2009 - 2020 by Eric House (xwords@eehouse.org). All rights
|
||||||
* reserved.
|
* reserved.
|
||||||
|
@ -572,8 +572,8 @@ public class NetLaunchInfo implements Serializable {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
removeUnsupported( supported );
|
|
||||||
_conTypes = addrs.toInt();
|
_conTypes = addrs.toInt();
|
||||||
|
removeUnsupported( supported );
|
||||||
|
|
||||||
calcValid();
|
calcValid();
|
||||||
}
|
}
|
||||||
|
@ -748,7 +748,7 @@ public class NetLaunchInfo implements Serializable {
|
||||||
iter.hasNext(); ) {
|
iter.hasNext(); ) {
|
||||||
CommsConnType typ = iter.next();
|
CommsConnType typ = iter.next();
|
||||||
if ( !supported.contains( typ ) ) {
|
if ( !supported.contains( typ ) ) {
|
||||||
Log.d( TAG, "removing %s", typ );
|
Log.d( TAG, "removeUnsupported(): removing %s", typ );
|
||||||
iter.remove();
|
iter.remove();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -778,6 +778,9 @@ public class NetLaunchInfo implements Serializable {
|
||||||
valid = null != mqttDevID;
|
valid = null != mqttDevID;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
if ( !valid ) {
|
||||||
|
Log.d( TAG, "valid after %s: %b", typ, valid );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
m_valid = valid;
|
m_valid = valid;
|
||||||
|
|
|
@ -127,7 +127,14 @@ abstract class XWServiceHelper {
|
||||||
protected boolean handleInvitation( NetLaunchInfo nli,
|
protected boolean handleInvitation( NetLaunchInfo nli,
|
||||||
String device, DictFetchOwner dfo )
|
String device, DictFetchOwner dfo )
|
||||||
{
|
{
|
||||||
boolean success = nli.isValid() && checkNotInFlight( nli );
|
boolean success = false;
|
||||||
|
if ( !nli.isValid() ) {
|
||||||
|
Log.d( TAG, "invalid nli" );
|
||||||
|
} else if ( ! checkNotInFlight( nli ) ) {
|
||||||
|
Log.e( TAG, "checkNotInFlight() => false" );
|
||||||
|
} else {
|
||||||
|
success = true;
|
||||||
|
}
|
||||||
CurGameInfo gi = null;
|
CurGameInfo gi = null;
|
||||||
if ( success ) {
|
if ( success ) {
|
||||||
long[] rowids = DBUtils.getRowIDsFor( mContext, nli.gameID() );
|
long[] rowids = DBUtils.getRowIDsFor( mContext, nli.gameID() );
|
||||||
|
|
|
@ -200,7 +200,8 @@ mqttc_init( LaunchParams* params )
|
||||||
int keepalive = 60;
|
int keepalive = 60;
|
||||||
err = mosquitto_connect( mosq, params->connInfo.mqtt.hostName,
|
err = mosquitto_connect( mosq, params->connInfo.mqtt.hostName,
|
||||||
params->connInfo.mqtt.port, keepalive );
|
params->connInfo.mqtt.port, keepalive );
|
||||||
XP_LOGFF( "mosquitto_connect() => %s", mosquitto_strerror(err) );
|
XP_LOGFF( "mosquitto_connect(host=%s) => %s", params->connInfo.mqtt.hostName,
|
||||||
|
mosquitto_strerror(err) );
|
||||||
if ( MOSQ_ERR_SUCCESS == err ) {
|
if ( MOSQ_ERR_SUCCESS == err ) {
|
||||||
int mid;
|
int mid;
|
||||||
err = mosquitto_subscribe( mosq, &mid, storage->topic, DEFAULT_QOS );
|
err = mosquitto_subscribe( mosq, &mid, storage->topic, DEFAULT_QOS );
|
||||||
|
|
|
@ -50,6 +50,7 @@ def main():
|
||||||
args = mkParser().parse_args()
|
args = mkParser().parse_args()
|
||||||
|
|
||||||
mqttc = makeClient()
|
mqttc = makeClient()
|
||||||
|
mqttc.username_pw_set('xwuser', password='xw4r0cks')
|
||||||
mqttc.connect(args.HOST, args.PORT)
|
mqttc.connect(args.HOST, args.PORT)
|
||||||
# Start subscribe, with QoS level 2
|
# Start subscribe, with QoS level 2
|
||||||
for topic in g_topics:
|
for topic in g_topics:
|
||||||
|
|
Loading…
Reference in a new issue