Tuukka Norri avatar Tuukka Norri committed f0acf90

Fixed a bug which caused the atexit function to be registered each time the connection monitor was instantiated

Comments (0)

Files changed (1)

Sources/PGTSConnectionMonitor.m

 {
 	if ((self = [super init]))
 	{
-		atexit (&ProcessWillExit);
-
+		@synchronized ([self class])
+		{
+			static BOOL tooLate = NO;
+			if (! tooLate)
+			{
+				tooLate = YES;
+				atexit (&ProcessWillExit);		
+			}
+		}
+		
 		io_object_t ioNotifier = 0;
 		IONotificationPortRef ioNotificationPort = NULL;
 		mIOPowerSession = IORegisterForSystemPower (self, &ioNotificationPort, &WorkspaceWillSleep, &ioNotifier);
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.