adium 5577:404f347badab: Merged adium-1.5.7 into adium-1.6.

commits at adium.im commits at adium.im
Mon Jun 17 22:05:52 UTC 2013


details:	http://hg.adium.im/adium/rev/404f347badab
revision:	5577:404f347badab
branch:		adium-1.6
author:		Thijs Alkemade <me at thijsalkema.de>
date:		Mon Jun 17 23:52:18 2013 +0200

Merged adium-1.5.7 into adium-1.6.

diffs (65 lines):

diff -r 4ecf114b3656 -r 404f347badab ChangeLogs/Changes.txt
--- a/ChangeLogs/Changes.txt	Fri Jun 14 16:07:01 2013 +0200
+++ b/ChangeLogs/Changes.txt	Mon Jun 17 23:52:18 2013 +0200
@@ -57,13 +57,18 @@
 - Fixed DNS leaks in libpurple. / Added a "Tor (SOCKS5)" proxy option, which uses the Tor proxy option of libpurple. (#15161)
 - "Proxy bypass when registered jabber handle" (#15957)
 
-Version 1.5.7 (XX/XX/20XX)
- * Fix a bug that could cause SSL connections to be closed prematurely. (#16356)
+Version 1.5.7 (XX/06/2013)
+ * Updated Twitter support.
+   * Retweets (RTs) now properly display the original author.
+   * t.co links are now expanded.
+   * Fixed parsing to conform to the standard. (#13947)
+ * Removed StatusNet support.
+ * Fixed a bug that could cause SSL connections to be closed prematurely. (#15405, #15411, #15741, #16356)
 
 Version 1.5.6 (3/18/2013)
- * Fix a crash on startup on 10.6.8.
- * Fix a crash when accepting or canceling the certificate verification dialog. (#16280)
- * Fix a crash or hang when trying to use OTR on 32-bits Macs. (#16203)
+ * Fixed a crash on startup on 10.6.8.
+ * Fixed a crash when accepting or canceling the certificate verification dialog. (#16280)
+ * Fixed a crash or hang when trying to use OTR on 32-bits Macs. (#16203)
 
 Version 1.5.5 (2/24/2013)
  * Updated libpurple to 2.10.7 fixing two security vulnerabilities.
diff -r 4ecf114b3656 -r 404f347badab Plugins/Twitter Plugin/AITwitterAccount.m
--- a/Plugins/Twitter Plugin/AITwitterAccount.m	Fri Jun 14 16:07:01 2013 +0200
+++ b/Plugins/Twitter Plugin/AITwitterAccount.m	Mon Jun 17 23:52:18 2013 +0200
@@ -1035,12 +1035,22 @@
 		
 		[listContact setValue:[NSNumber numberWithBool:YES] forProperty:TWITTER_PROPERTY_REQUESTED_USER_ICON notify:NotifyNever];
 		
+		static dispatch_semaphore_t imageDownloadSemaphore;
+		static dispatch_once_t onceToken;
+		dispatch_once(&onceToken, ^{
+			imageDownloadSemaphore = dispatch_semaphore_create(16);
+		});
+		
 		// Grab the user icon and set it as their serverside icon.
-		dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
+		dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_LOW, 0), ^{
 			NSString *imageURL = [url stringByReplacingOccurrencesOfString:@"_normal." withString:@"_bigger."];
 			NSURLRequest *imageRequest = [NSURLRequest requestWithURL:[NSURL URLWithString:imageURL]];
 			NSError *error = nil;
+			
+			dispatch_semaphore_wait(imageDownloadSemaphore, DISPATCH_TIME_FOREVER);
 			NSData *data = [NSURLConnection sendSynchronousRequest:imageRequest returningResponse:nil error:&error];
+			dispatch_semaphore_signal(imageDownloadSemaphore);
+			
 			NSImage *image = [[[NSImage alloc] initWithData:data] autorelease];
 			
 			if (image) {
@@ -1053,7 +1063,9 @@
 					[listContact setValue:url forProperty:TWITTER_PROPERTY_USER_ICON_URL afterDelay:NotifyNever];
 				});
 			} else {
-				[self requestFailed:AITwitterUserIconPull withError:error userInfo:@{ @"ListContact" : listContact }];
+				dispatch_async(dispatch_get_main_queue(), ^{
+					[self requestFailed:AITwitterUserIconPull withError:error userInfo:@{ @"ListContact" : listContact }];
+				});
 			}
 		});
 	}




More information about the commits mailing list