adium/adium

Merged adium-1.5.7 into adium-1.6.
adium-1.6
2013-06-17, Thijs Alkemade
404f347badab
Merged adium-1.5.7 into adium-1.6.
--- 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.
--- 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 }];
+ });
}
});
}