mirror of
https://github.com/transmission/transmission
synced 2025-03-04 02:28:03 +00:00
avoid creating the Bonjour Controller singleton unnecessarily
This commit is contained in:
parent
1f58ca17e5
commit
4382b7c93a
4 changed files with 12 additions and 3 deletions
|
@ -30,6 +30,7 @@
|
|||
}
|
||||
|
||||
+ (BonjourController *) defaultController;
|
||||
+ (BOOL) defaultControllerExists;
|
||||
|
||||
- (void) startWithPort: (int) port;
|
||||
- (void) stop;
|
||||
|
|
|
@ -39,6 +39,11 @@ BonjourController * fDefaultController = nil;
|
|||
return fDefaultController;
|
||||
}
|
||||
|
||||
+ (BOOL) defaultControllerExists
|
||||
{
|
||||
return fDefaultController != nil;
|
||||
}
|
||||
|
||||
- (void) dealloc
|
||||
{
|
||||
[fService release];
|
||||
|
|
|
@ -671,7 +671,8 @@ static void sleepCallback(void * controller, io_service_t y, natural_t messageTy
|
|||
fQuitting = YES;
|
||||
|
||||
//stop the Bonjour service
|
||||
[[BonjourController defaultController] stop];
|
||||
if ([BonjourController defaultControllerExists])
|
||||
[[BonjourController defaultController] stop];
|
||||
|
||||
//stop blocklist download
|
||||
if ([BlocklistDownloader isRunning])
|
||||
|
@ -1472,7 +1473,6 @@ static void sleepCallback(void * controller, io_service_t y, natural_t messageTy
|
|||
[torrent closeRemoveTorrent: deleteData];
|
||||
}];
|
||||
|
||||
|
||||
[fTableView beginUpdates];
|
||||
beganUpdate = YES;
|
||||
}
|
||||
|
|
|
@ -1050,7 +1050,10 @@
|
|||
if ([fDefaults boolForKey:@"RPC"] && [fDefaults boolForKey: @"RPCWebDiscovery"])
|
||||
[[BonjourController defaultController] startWithPort: [fDefaults integerForKey: @"RPCPort"]];
|
||||
else
|
||||
[[BonjourController defaultController] stop];
|
||||
{
|
||||
if ([BonjourController defaultControllerExists])
|
||||
[[BonjourController defaultController] stop];
|
||||
}
|
||||
}
|
||||
|
||||
- (void) updateRPCWhitelist
|
||||
|
|
Loading…
Add table
Reference in a new issue