X-Git-Url: http://git.ithinksw.org/MenuTunes.git/blobdiff_plain/e6737bc05855fb976e0126e85b436c91d19246b9..0e4a6623849f7fd40f3c577e08e9ca999abdcc7e:/NetworkController.m diff --git a/NetworkController.m b/NetworkController.m index 6c9631c..41bf4ac 100755 --- a/NetworkController.m +++ b/NetworkController.m @@ -98,7 +98,7 @@ static NetworkController *sharedController; name:name port:SERVER_PORT]; fullPass = [[NSUserDefaults standardUserDefaults] dataForKey:@"sharedPlayerPassword"]; - if (fullPass) { + if ([fullPass length]) { [fullPass getBytes:&buffer range:NSMakeRange(6, 4)]; [serverPass release]; serverPass = [[NSData alloc] initWithBytes:&buffer length:strlen(&buffer)]; @@ -111,6 +111,7 @@ static NetworkController *sharedController; } else if (serverOn && !status && [serverConnection isValid]) { //Turn off [service stop]; + [service release]; [rootObject invalidate]; [serverConnection registerName:nil]; [serverConnection invalidate]; @@ -219,6 +220,7 @@ static NetworkController *sharedController; host:host]; testConnection = [[NSConnection connectionWithReceivePort:nil sendPort:testPort] retain]; [testConnection setReplyTimeout:2]; + [testConnection setRequestTimeout:2]; tempProxy = (NetworkObject *)[testConnection rootProxy]; [tempProxy serverName]; valid = [tempProxy isValid]; @@ -229,7 +231,7 @@ static NetworkController *sharedController; return NO; NS_ENDHANDLER - if (!clientProxy) { + if (!tempProxy) { ITDebugLog(@"Null proxy! Couldn't connect!"); [testConnection release]; [testPort release]; @@ -240,6 +242,18 @@ static NetworkController *sharedController; return valid; } +- (void)resetServerName +{ + if ([self isServerOn]) { + [service stop]; + [service release]; + service = [[NSNetService alloc] initWithDomain:@"" + type:@"_mttp._tcp." + name:[[NSUserDefaults standardUserDefaults] stringForKey:@"sharedPlayerName"] + port:SERVER_PORT]; + } +} + - (BOOL)isServerOn { return serverOn; @@ -294,6 +308,9 @@ static NetworkController *sharedController; { ITDebugLog(@"Resolved service named %@.", [sender name]); [[NSNotificationCenter defaultCenter] postNotificationName:@"ITMTFoundNetService" object:nil]; + if ([[NSUserDefaults standardUserDefaults] boolForKey:@"useSharedPlayer"] && !connectedToServer) { + [[MainController sharedController] checkForRemoteServer]; + } [sender stop]; }