diff --git a/SessionMessagingKit/Open Groups/OpenGroupManagerV2.swift b/SessionMessagingKit/Open Groups/OpenGroupManagerV2.swift index ef4688cbb..dff1a97e6 100644 --- a/SessionMessagingKit/Open Groups/OpenGroupManagerV2.swift +++ b/SessionMessagingKit/Open Groups/OpenGroupManagerV2.swift @@ -33,23 +33,25 @@ public final class OpenGroupManagerV2 : NSObject { public func hasExistingOpenGroup(room: String, server: String, publicKey: String, using transaction: YapDatabaseReadWriteTransaction) -> Bool { guard let serverUrl: URL = URL(string: server) else { return false } - let schemeFreeServer: String = (serverUrl.host ?? server) - let schemeFreeDefaultServer: String = OpenGroupAPIV2.defaultServer.substring(from: "http://".count) + let serverHost: String = (serverUrl.host ?? server) + let serverPort: String = (serverUrl.port.map { ":\($0)" } ?? "") + let defaultServerHost: String = OpenGroupAPIV2.defaultServer.substring(from: "http://".count) var serverOptions: Set = Set([ - schemeFreeServer, - "http://\(schemeFreeServer)", - "https://\(schemeFreeServer)" + server, + "\(serverHost)\(serverPort)", + "http://\(serverHost)\(serverPort)", + "https://\(serverHost)\(serverPort)" ]) - if schemeFreeServer == OpenGroupAPIV2.legacyDefaultServerDNS { + if serverHost == OpenGroupAPIV2.legacyDefaultServerDNS { let defaultServerOptions: Set = Set([ - schemeFreeDefaultServer, + defaultServerHost, OpenGroupAPIV2.defaultServer, - "https://\(schemeFreeDefaultServer)" + "https://\(defaultServerHost)" ]) serverOptions = serverOptions.union(defaultServerOptions) } - else if schemeFreeServer == schemeFreeDefaultServer { + else if serverHost == defaultServerHost { let legacyServerOptions: Set = Set([ OpenGroupAPIV2.legacyDefaultServerDNS, "http://\(OpenGroupAPIV2.legacyDefaultServerDNS)",