From bf1a30505ff047091f2d9ff18341669f9d2b40c7 Mon Sep 17 00:00:00 2001 From: True Zhuanjia Date: Sat, 3 Aug 2024 18:42:35 +0800 Subject: [PATCH] try to fix invalid MAC issue that happens in some cases --- Limelight/Database/TemporaryHost.m | 7 +++---- Limelight/Network/ServerInfoResponse.m | 7 ++++++- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/Limelight/Database/TemporaryHost.m b/Limelight/Database/TemporaryHost.m index c71d7ab7..20f9f7d4 100644 --- a/Limelight/Database/TemporaryHost.m +++ b/Limelight/Database/TemporaryHost.m @@ -28,7 +28,7 @@ self.externalAddress = host.externalAddress; self.localAddress = host.localAddress; self.ipv6Address = host.ipv6Address; - self.mac = host.mac; + if(!(host.mac == nil || [host.mac isEqualToString:@"00:00:00:00:00:00"])) self.mac = host.mac; // try to fix invalid mac happens in some cases self.name = host.name; self.uuid = host.uuid; self.serverCodecModeSupport = host.serverCodecModeSupport; @@ -70,9 +70,8 @@ if (self.ipv6Address != nil) { parentHost.ipv6Address = self.ipv6Address; } - if (self.mac != nil) { - parentHost.mac = self.mac; - } + // try to fix invalid mac happens in some cases + if (!(self.mac == nil || [self.mac isEqualToString:@"00:00:00:00:00:00"])) parentHost.mac = self.mac; if (self.serverCert != nil) { parentHost.serverCert = self.serverCert; } diff --git a/Limelight/Network/ServerInfoResponse.m b/Limelight/Network/ServerInfoResponse.m index e210369d..fffaf4cc 100644 --- a/Limelight/Network/ServerInfoResponse.m +++ b/Limelight/Network/ServerInfoResponse.m @@ -20,7 +20,12 @@ - (void) populateHost:(TemporaryHost*)host { host.name = [[self getStringTag:TAG_HOSTNAME] trim]; host.uuid = [[self getStringTag:TAG_UNIQUE_ID] trim]; - host.mac = [[self getStringTag:TAG_MAC_ADDRESS] trim]; + + + // try to fix invalid mac happens in some cases + NSString* tmpMac = [[self getStringTag:TAG_MAC_ADDRESS] trim]; + if (!(tmpMac == nil || [tmpMac isEqualToString:@"00:00:00:00:00:00"])) host.mac = tmpMac; + host.currentGame = [[self getStringTag:TAG_CURRENT_GAME] trim]; NSInteger httpsPort;