From 7320099494ac372e0bea63cf3b67b21bdc5c6d09 Mon Sep 17 00:00:00 2001 From: akwizgran Date: Tue, 28 Apr 2020 17:56:01 +0100 Subject: [PATCH] Also store properties discovered from outgoing connections. This is useful when adding a Bluetooth address is discovered while adding a contact. --- .../briarproject/bramble/plugin/ConnectionManagerImpl.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/bramble-core/src/main/java/org/briarproject/bramble/plugin/ConnectionManagerImpl.java b/bramble-core/src/main/java/org/briarproject/bramble/plugin/ConnectionManagerImpl.java index 979e8ea01..ba45b6e1a 100644 --- a/bramble-core/src/main/java/org/briarproject/bramble/plugin/ConnectionManagerImpl.java +++ b/bramble-core/src/main/java/org/briarproject/bramble/plugin/ConnectionManagerImpl.java @@ -385,6 +385,7 @@ class ConnectionManagerImpl implements ConnectionManager { private final TransportId transportId; private final TransportConnectionReader reader; private final TransportConnectionWriter writer; + private final TransportProperties remote; @Nullable private volatile SyncSession outgoingSession = null; @@ -395,6 +396,7 @@ class ConnectionManagerImpl implements ConnectionManager { this.transportId = transportId; reader = connection.getReader(); writer = connection.getWriter(); + remote = connection.getRemoteProperties(); } @Override @@ -471,13 +473,16 @@ class ConnectionManagerImpl implements ConnectionManager { connectionRegistry.registerConnection(contactId, transportId, false); try { + // Store any transport properties discovered from the connection + transportPropertyManager.addRemotePropertiesFromConnection( + contactId, transportId, remote); // Create and run the incoming session createIncomingSession(ctx, reader).run(); reader.dispose(false, true); // Interrupt the outgoing session so it finishes cleanly SyncSession out = outgoingSession; if (out != null) out.interrupt(); - } catch (IOException e) { + } catch (DbException | IOException e) { logException(LOG, WARNING, e); onReadError(); } finally {