git.ithinksw.org
/
MenuTunes.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Weeeee. Hopefully fixed more network bugs.
[MenuTunes.git]
/
NetworkController.m
diff --git
a/NetworkController.m
b/NetworkController.m
index
24e8264
..
6c9631c
100755
(executable)
--- a/
NetworkController.m
+++ b/
NetworkController.m
@@
-33,6
+33,8
@@
static NetworkController *sharedController;
sharedController = self;
browser = [[NSNetServiceBrowser alloc] init];
[browser setDelegate:self];
sharedController = self;
browser = [[NSNetServiceBrowser alloc] init];
[browser setDelegate:self];
+ rootObject = [[NetworkObject alloc] init];
+ serverPort = [[NSSocketPort alloc] initWithTCPPort:SERVER_PORT];
}
return self;
}
}
return self;
}
@@
-45,6
+47,8
@@
static NetworkController *sharedController;
}
[serverPass release];
[clientPass release];
}
[serverPass release];
[clientPass release];
+ [serverPort release];
+ [rootObject release];
[clientProxy release];
[remoteServices release];
[browser release];
[clientProxy release];
[remoteServices release];
[browser release];
@@
-73,13
+77,13
@@
static NetworkController *sharedController;
NSData *fullPass;
//Turn on
NS_DURING
NSData *fullPass;
//Turn on
NS_DURING
- serverPort = [[NSSocketPort alloc] initWithTCPPort:SERVER_PORT];
serverConnection = [[NSConnection alloc] initWithReceivePort:serverPort
sendPort:serverPort];
serverConnection = [[NSConnection alloc] initWithReceivePort:serverPort
sendPort:serverPort];
- [serverConnection setRootObject:[[NetworkObject alloc] init]];
+ [serverConnection setRootObject:rootObject];
+ [rootObject makeValid];
[serverConnection registerName:@"ITMTPlayerHost"];
NS_HANDLER
[serverConnection registerName:@"ITMTPlayerHost"];
NS_HANDLER
- [
[serverConnection rootObject] release
];
+ [
serverConnection setRootObject:nil
];
[serverConnection release];
[serverPort release];
ITDebugLog(@"Error starting server!");
[serverConnection release];
[serverPort release];
ITDebugLog(@"Error starting server!");
@@
-107,8
+111,11
@@
static NetworkController *sharedController;
} else if (serverOn && !status && [serverConnection isValid]) {
//Turn off
[service stop];
} else if (serverOn && !status && [serverConnection isValid]) {
//Turn off
[service stop];
+ [rootObject invalidate];
[serverConnection registerName:nil];
[serverConnection registerName:nil];
- [[serverConnection rootObject] release];
+ [serverConnection invalidate];
+ //[serverConnection setRootObject:nil];
+ //[[serverConnection sendPort] autorelease];
[serverConnection release];
ITDebugLog(@"Stopped server.");
serverOn = NO;
[serverConnection release];
ITDebugLog(@"Stopped server.");
serverOn = NO;
@@
-197,6
+204,7
@@
static NetworkController *sharedController;
NSConnection *testConnection;
NSSocketPort *testPort;
NetworkObject *tempProxy;
NSConnection *testConnection;
NSSocketPort *testPort;
NetworkObject *tempProxy;
+ BOOL valid;
ITDebugLog(@"Checking for shared remote at %@.", host);
if (fullPass) {
[fullPass getBytes:&buffer range:NSMakeRange(6, 4)];
ITDebugLog(@"Checking for shared remote at %@.", host);
if (fullPass) {
[fullPass getBytes:&buffer range:NSMakeRange(6, 4)];
@@
-213,6
+221,7
@@
static NetworkController *sharedController;
[testConnection setReplyTimeout:2];
tempProxy = (NetworkObject *)[testConnection rootProxy];
[tempProxy serverName];
[testConnection setReplyTimeout:2];
tempProxy = (NetworkObject *)[testConnection rootProxy];
[tempProxy serverName];
+ valid = [tempProxy isValid];
NS_HANDLER
ITDebugLog(@"Connection to host failed: %@", host);
[testConnection release];
NS_HANDLER
ITDebugLog(@"Connection to host failed: %@", host);
[testConnection release];
@@
-228,7
+237,7
@@
static NetworkController *sharedController;
}
[testConnection release];
[testPort release];
}
[testConnection release];
[testPort release];
- return
YES
;
+ return
valid
;
}
- (BOOL)isServerOn
}
- (BOOL)isServerOn