adium-1.4 2601:b9793bdf3c9a: Rebuilt mkalias from source as a un...

commits at adium.im commits at adium.im
Mon Aug 31 12:21:45 UTC 2009


details:	http://hg.adium.im/adium-1.4/rev/b9793bdf3c9a
revision:	2601:b9793bdf3c9a
author:		Evan Schoenberg
date:		Mon Aug 31 07:27:47 2009 -0500

Rebuilt mkalias from source as a universal binary (was PPC only)
Subject: adium-1.4 2602:15182a1ffbca: I guess this is just a merge. I'm a bit annoyed that hg shows merged changes in a diff, though I see why it does...

details:	http://hg.adium.im/adium-1.4/rev/15182a1ffbca
revision:	2602:15182a1ffbca
author:		Evan Schoenberg
date:		Mon Aug 31 07:30:08 2009 -0500

I guess this is just a merge. I'm a bit annoyed that hg shows merged changes in a diff, though I see why it does...
Subject: adium-1.4 2603:642e389c4035: And another merge

details:	http://hg.adium.im/adium-1.4/rev/642e389c4035
revision:	2603:642e389c4035
author:		Evan Schoenberg
date:		Mon Aug 31 07:30:27 2009 -0500

And another merge

diffs (truncated from 84980 to 1000 lines):

diff -r d13301831855 -r 642e389c4035 Adium.xcodeproj/project.pbxproj
--- a/Adium.xcodeproj/project.pbxproj	Tue Aug 18 14:01:14 2009 -0500
+++ b/Adium.xcodeproj/project.pbxproj	Mon Aug 31 07:30:27 2009 -0500
@@ -175,6 +175,7 @@
 		11D9156F0FFC0FEB00B39713 /* AIImageShackImageUploader.m in Sources */ = {isa = PBXBuildFile; fileRef = 11D915580FFC0E9C00B39713 /* AIImageShackImageUploader.m */; };
 		11D915720FFC100700B39713 /* AIGenericMultipartImageUploader.m in Sources */ = {isa = PBXBuildFile; fileRef = 11D915710FFC100700B39713 /* AIGenericMultipartImageUploader.m */; };
 		11E786810F8860210014612E /* AIJumpControlPlugin.m in Sources */ = {isa = PBXBuildFile; fileRef = 11E7867F0F8860210014612E /* AIJumpControlPlugin.m */; };
+		11EC56FC1049E96F00C02587 /* AILeopardCompatibility.h in Headers */ = {isa = PBXBuildFile; fileRef = 1156F03D1049E83F002673FC /* AILeopardCompatibility.h */; settings = {ATTRIBUTES = (Public, ); }; };
 		11EE1B4D0CDCFAF40097F246 /* oscar-adium.c in Sources */ = {isa = PBXBuildFile; fileRef = 11EE1B490CDCFAF40097F246 /* oscar-adium.c */; };
 		11EE1B4E0CDCFAF40097F246 /* oscar-adium.h in Headers */ = {isa = PBXBuildFile; fileRef = 11EE1B4A0CDCFAF40097F246 /* oscar-adium.h */; };
 		11EE1B4F0CDCFAF40097F246 /* ssl-openssl.c in Sources */ = {isa = PBXBuildFile; fileRef = 11EE1B4B0CDCFAF40097F246 /* ssl-openssl.c */; };
@@ -1898,6 +1899,7 @@
 		1150A9AE0FBE491300E0BD31 /* tr */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = tr; path = "Plugins/Purple Service/tr.lproj/ESIRCAccountView.nib"; sourceTree = "<group>"; };
 		1150A9AF0FBE491500E0BD31 /* zh_CN */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = zh_CN; path = "Plugins/Purple Service/zh_CN.lproj/ESIRCAccountView.nib"; sourceTree = "<group>"; };
 		1150A9B00FBE491700E0BD31 /* zh_TW */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = zh_TW; path = "Plugins/Purple Service/zh_TW.lproj/ESIRCAccountView.nib"; sourceTree = "<group>"; };
+		1156F03D1049E83F002673FC /* AILeopardCompatibility.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AILeopardCompatibility.h; path = "Frameworks/AIUtilities Framework/Source/AILeopardCompatibility.h"; sourceTree = "<group>"; };
 		1163F0EA0F6C7A8300F12F5D /* AIURLShortenerPlugin.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AIURLShortenerPlugin.h; path = ../../Source/AIURLShortenerPlugin.h; sourceTree = "<group>"; };
 		1163F0EB0F6C7A8300F12F5D /* AIURLShortenerPlugin.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = AIURLShortenerPlugin.m; path = ../../Source/AIURLShortenerPlugin.m; sourceTree = "<group>"; };
 		1164A90B0F7AD4AB00110AE4 /* AIContentTopic.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AIContentTopic.h; path = "Frameworks/Adium Framework/Source/AIContentTopic.h"; sourceTree = "<group>"; };
@@ -7463,6 +7465,7 @@
 				6334FF300F9C14BF003C77A9 /* Fun New Controls */,
 				6334FF050F9C14BF003C77A9 /* Fun New Classes */,
 				6334FF020F9C14BF003C77A9 /* Functions */,
+				1156F03D1049E83F002673FC /* AILeopardCompatibility.h */,
 			);
 			name = AIUtilities;
 			sourceTree = "<group>";
@@ -9159,6 +9162,7 @@
 			isa = PBXHeadersBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
+				11EC56FC1049E96F00C02587 /* AILeopardCompatibility.h in Headers */,
 				6334FFFF0F9C14C2003C77A9 /* AIFunctions.h in Headers */,
 				633400010F9C14C2003C77A9 /* JVMarkedScroller.h in Headers */,
 				633400030F9C14C2003C77A9 /* AIMutableOwnerArray.h in Headers */,
diff -r d13301831855 -r 642e389c4035 Frameworks/AIUtilities Framework/Source/AIApplicationAdditions.h
--- a/Frameworks/AIUtilities Framework/Source/AIApplicationAdditions.h	Tue Aug 18 14:01:14 2009 -0500
+++ b/Frameworks/AIUtilities Framework/Source/AIApplicationAdditions.h	Mon Aug 31 07:30:27 2009 -0500
@@ -9,5 +9,6 @@
 @interface NSApplication (AIApplicationAdditions)
 
 - (NSString *)applicationVersion;
+- (BOOL)isOnSnowLeopardOrBetter;
 
 @end
diff -r d13301831855 -r 642e389c4035 Frameworks/AIUtilities Framework/Source/AIApplicationAdditions.m
--- a/Frameworks/AIUtilities Framework/Source/AIApplicationAdditions.m	Tue Aug 18 14:01:14 2009 -0500
+++ b/Frameworks/AIUtilities Framework/Source/AIApplicationAdditions.m	Mon Aug 31 07:30:27 2009 -0500
@@ -14,4 +14,15 @@
 	return [[[NSBundle mainBundle] infoDictionary] objectForKey:(NSString *)kCFBundleVersionKey];
 }
 
+//Make sure the version number defines exist; when compiling in 10.5, NSAppKitVersionNumber10_5 isn't defined 
+#ifndef NSAppKitVersionNumber10_5
+#define NSAppKitVersionNumber10_5 949
+#endif 
+
+- (BOOL)isOnSnowLeopardOrBetter
+{
+	return (floor(NSAppKitVersionNumber) > NSAppKitVersionNumber10_5);
+}
+
+
 @end
diff -r d13301831855 -r 642e389c4035 Frameworks/AIUtilities Framework/Source/AILeopardCompatibility.h
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Frameworks/AIUtilities Framework/Source/AILeopardCompatibility.h	Mon Aug 31 07:30:27 2009 -0500
@@ -0,0 +1,45 @@
+/*
+ *  AILeopardCompatibility.h
+ *  Adium
+ *
+ *  Created by Zachary West on 2009-08-29.
+ *  Copyright 2009  . All rights reserved.
+ *
+ */
+
+#ifndef AILeopardCompatibility
+#define AILeopardCompatibility
+
+#import <AvailabilityMacros.h>
+
+#ifndef MAC_OS_X_VERSION_10_6
+#define MAC_OS_X_VERSION_10_6 1060
+#endif //ndef MAC_OS_X_VERSION_10_6
+
+#if MAC_OS_X_VERSION_10_6 > MAC_OS_X_VERSION_MAX_ALLOWED
+
+#ifdef __OBJC__
+ at interface NSTextView(NSTextViewLeopardMethods)
+- (void)setAutomaticDataDetectionEnabled:(BOOL)flag;
+- (BOOL)isAutomaticDataDetectionEnabled;
+- (void)toggleAutomaticDataDetection:(id)sender;
+
+- (void)setAutomaticDashSubstitutionEnabled:(BOOL)flag;
+- (BOOL)isAutomaticDashSubstitutionEnabled;
+- (void)toggleAutomaticDashSubstitution:(id)sender;
+
+- (void)setAutomaticTextReplacementEnabled:(BOOL)flag;
+- (BOOL)isAutomaticTextReplacementEnabled;
+- (void)toggleAutomaticTextReplacement:(id)sender;
+
+- (void)setAutomaticSpellingCorrectionEnabled:(BOOL)flag;
+- (BOOL)isAutomaticSpellingCorrectionEnabled;
+- (void)toggleAutomaticSpellingCorrection:(id)sender;
+ at end
+#endif
+
+#else //Not compiling for 10.6
+
+#endif //MAC_OS_X_VERSION_10_6
+
+#endif //AILeopardCompatibility
diff -r d13301831855 -r 642e389c4035 Frameworks/Adium Framework/Source/AIHTMLDecoder.m
--- a/Frameworks/Adium Framework/Source/AIHTMLDecoder.m	Tue Aug 18 14:01:14 2009 -0500
+++ b/Frameworks/Adium Framework/Source/AIHTMLDecoder.m	Mon Aug 31 07:30:27 2009 -0500
@@ -432,10 +432,10 @@
 					linkString = fixedLinkString;
 				}
 				
-				[string appendString:linkString];
+				[string appendString:[linkString stringByEscapingForXMLWithEntities:nil]];
 				if (!thingsToInclude.simpleTagsOnly) {
 					[string appendString:@"\" title=\""];
-					[string appendString:linkString];
+					[string appendString:[linkString stringByEscapingForXMLWithEntities:nil]];
 				}
 				
 				NSString *classString = [attributes objectForKey:AIElementClassAttributeName];
diff -r d13301831855 -r 642e389c4035 Frameworks/Adium Framework/Source/AIMessageEntryTextView.m
--- a/Frameworks/Adium Framework/Source/AIMessageEntryTextView.m	Tue Aug 18 14:01:14 2009 -0500
+++ b/Frameworks/Adium Framework/Source/AIMessageEntryTextView.m	Mon Aug 31 07:30:27 2009 -0500
@@ -37,8 +37,9 @@
 #import <AIUtilities/AIBezierPathAdditions.h>
 #import <Adium/AIContactControllerProtocol.h>
 
+#import <FriBidi/NSString-FBAdditions.h>
 
-#import <FriBidi/NSString-FBAdditions.h>
+#import <AIUtilities/AILeopardCompatibility.h>
 
 #define MAX_HISTORY					25		//Number of messages to remember in history
 #define ENTRY_TEXTVIEW_PADDING		6		//Padding for auto-sizing
@@ -49,6 +50,14 @@
 #define KEY_GRAMMAR_CHECKING					@"Grammar Checking Enabled"
 #define	PREF_GROUP_DUAL_WINDOW_INTERFACE		@"Dual Window Interface"
 
+#define KEY_SUBSTITUTION_DASH					@"Smart Dash Substitutions"
+#define KEY_SUBSTITUTION_DATA_DETECTORS			@"Smart Data Detectors Substitutions"
+#define KEY_SUBSTITUTION_REPLACEMENT			@"Text Replacement Substitutions"
+#define KEY_SUBSTITUTION_SPELLING				@"Spelling Substitutions"
+#define KEY_SUBSTITUTION_COPY_PASTE				@"Smart Copy Paste Substitutions"
+#define KEY_SUBSTITUTION_QUOTE					@"Smart Quote Substitutions"
+#define KEY_SUBSTITUTION_LINK					@"Smart Links Substitutions"
+
 #define INDICATOR_RIGHT_PADDING					2		// Padding between right side of the message view and the rightmost indicator
 
 #define PREF_GROUP_CHARACTER_COUNTER			@"Character Counter"
@@ -392,16 +401,44 @@
 																 group:GROUP_ACCOUNT_STATUS] boolValue];
 	}
 	
-	if (!object &&
-		[group isEqualToString:PREF_GROUP_DUAL_WINDOW_INTERFACE] &&
-		(!key || [key isEqualToString:KEY_SPELL_CHECKING])) {
-		[self setContinuousSpellCheckingEnabled:[[prefDict objectForKey:KEY_SPELL_CHECKING] boolValue]];
-	}
+	if (!object && [group isEqualToString:PREF_GROUP_DUAL_WINDOW_INTERFACE]) {
+		if (!key || [key isEqualToString:KEY_GRAMMAR_CHECKING]) {
+			[self setGrammarCheckingEnabled:[[prefDict objectForKey:KEY_GRAMMAR_CHECKING] boolValue]];
+		}
 
-	if (!object &&
-		[group isEqualToString:PREF_GROUP_DUAL_WINDOW_INTERFACE] &&
-		(!key || [key isEqualToString:KEY_GRAMMAR_CHECKING])) {
-		[self setGrammarCheckingEnabled:[[prefDict objectForKey:KEY_GRAMMAR_CHECKING] boolValue]];
+		if (!key || [key isEqualToString:KEY_SPELL_CHECKING]) {
+			[self setContinuousSpellCheckingEnabled:[[prefDict objectForKey:KEY_SPELL_CHECKING] boolValue]];
+		}
+		
+		if ([NSApp isOnSnowLeopardOrBetter]) {
+			if (!key || [key isEqualToString:KEY_SUBSTITUTION_DASH]) {
+				[self setAutomaticDashSubstitutionEnabled:[[prefDict objectForKey:KEY_SUBSTITUTION_DASH] boolValue]];
+			}
+		
+			if (!key || [key isEqualToString:KEY_SUBSTITUTION_DATA_DETECTORS]) {
+				[self setAutomaticDataDetectionEnabled:[[prefDict objectForKey:KEY_SUBSTITUTION_DATA_DETECTORS] boolValue]];
+			}
+		
+			if (!key || [key isEqualToString:KEY_SUBSTITUTION_REPLACEMENT]) {
+				[self setAutomaticTextReplacementEnabled:[[prefDict objectForKey:KEY_SUBSTITUTION_REPLACEMENT] boolValue]];
+			}
+		
+			if (!key || [key isEqualToString:KEY_SUBSTITUTION_SPELLING]) {
+				[self setAutomaticSpellingCorrectionEnabled:[[prefDict objectForKey:KEY_SUBSTITUTION_SPELLING] boolValue]];
+			}
+		}
+		
+		if (!key || [key isEqualToString:KEY_SUBSTITUTION_COPY_PASTE]) {
+			[self setSmartInsertDeleteEnabled:[[prefDict objectForKey:KEY_SUBSTITUTION_COPY_PASTE] boolValue]];
+		}
+		
+		if (!key || [key isEqualToString:KEY_SUBSTITUTION_QUOTE]) {
+			[self setAutomaticQuoteSubstitutionEnabled:[[prefDict objectForKey:KEY_SUBSTITUTION_QUOTE] boolValue]];
+		}
+		
+		if (!key || [key isEqualToString:KEY_SUBSTITUTION_LINK]) {
+			[self setAutomaticLinkDetectionEnabled:[[prefDict objectForKey:KEY_SUBSTITUTION_LINK] boolValue]];
+		}
 	}
 }
 
@@ -1120,11 +1157,12 @@
 - (void)positionCharacterCounter
 {
 	NSRect visRect = [[self superview] bounds];
-	NSRect counterRect = [characterCounter frame];
+	NSSize counterSize = characterCounter.string.size;
 	
 	//NSMaxY([self frame]) is necessary because visRect's height changes after you start typing. No idea why.
-	[characterCounter setFrameOrigin:NSMakePoint(NSMaxX(visRect) - NSWidth(counterRect) - INDICATOR_RIGHT_PADDING,
-												 NSMidY([self frame]) - NSHeight(counterRect)/2)];
+	[characterCounter setFrameOrigin:NSMakePoint(NSMaxX(visRect) - counterSize.width - INDICATOR_RIGHT_PADDING,
+												 NSMidY([self frame]) - (counterSize.height)/2)];
+	[characterCounter setFrameSize:counterSize];
 	[[self enclosingScrollView] setNeedsDisplay:YES];
 }
 
@@ -1381,6 +1419,90 @@
 										  group:PREF_GROUP_DUAL_WINDOW_INTERFACE];
 }
 
+#pragma mark Substitutions
+/*!
+ * @brief Dash substitution was toggled
+ */
+- (void)toggleAutomaticDashSubstitution:(id)sender
+{
+	[super toggleAutomaticDashSubstitution:sender];
+	
+	[adium.preferenceController setPreference:[NSNumber numberWithBool:[self isAutomaticDashSubstitutionEnabled]]
+									   forKey:KEY_SUBSTITUTION_DASH
+										group:PREF_GROUP_DUAL_WINDOW_INTERFACE];
+}
+
+/*!
+ * @brief Data Detector substitution was toggled
+ */
+- (void)toggleAutomaticDataDetection:(id)sender
+{
+	[super toggleAutomaticDataDetection:sender];
+	
+	[adium.preferenceController setPreference:[NSNumber numberWithBool:[self isAutomaticDataDetectionEnabled]]
+									   forKey:KEY_SUBSTITUTION_DATA_DETECTORS
+										group:PREF_GROUP_DUAL_WINDOW_INTERFACE];
+}
+
+/*!
+ * @brief Text Replacement substitution was toggled
+ */
+- (void)toggleAutomaticTextReplacement:(id)sender
+{
+	[super toggleAutomaticTextReplacement:sender];
+	
+	[adium.preferenceController setPreference:[NSNumber numberWithBool:[self isAutomaticTextReplacementEnabled]]
+									   forKey:KEY_SUBSTITUTION_REPLACEMENT
+										group:PREF_GROUP_DUAL_WINDOW_INTERFACE];
+}
+
+/*!
+ * @brief Spelling replacement substitution was toggled
+ */
+- (void)toggleAutomaticSpellingCorrection:(id)sender
+{
+	[super toggleAutomaticSpellingCorrection:sender];
+	
+	[adium.preferenceController setPreference:[NSNumber numberWithBool:[self isAutomaticSpellingCorrectionEnabled]]
+									   forKey:KEY_SUBSTITUTION_SPELLING
+										group:PREF_GROUP_DUAL_WINDOW_INTERFACE];
+}
+
+/*!
+ * @brief Smart insert delete was toggled
+ */
+- (void)toggleSmartInsertDelete:(id)sender
+{
+	[super toggleSmartInsertDelete:sender];
+	
+	[adium.preferenceController setPreference:[NSNumber numberWithBool:[self smartInsertDeleteEnabled]]
+									   forKey:KEY_SUBSTITUTION_COPY_PASTE
+										group:PREF_GROUP_DUAL_WINDOW_INTERFACE];
+}
+
+/*!
+ * @brief Smart quote substitution was toggled
+ */
+- (void)toggleAutomaticQuoteSubstitution:(id)sender
+{
+	[super toggleAutomaticQuoteSubstitution:sender];
+	
+	[adium.preferenceController setPreference:[NSNumber numberWithBool:[self isAutomaticQuoteSubstitutionEnabled]]
+									   forKey:KEY_SUBSTITUTION_QUOTE
+										group:PREF_GROUP_DUAL_WINDOW_INTERFACE];
+}
+
+/*!
+ * @brief Smart link substitution was toggled
+ */
+- (void)toggleAutomaticLinkDetection:(id)sender
+{
+	[super toggleAutomaticLinkDetection:sender];
+	
+	[adium.preferenceController setPreference:[NSNumber numberWithBool:[self isAutomaticLinkDetectionEnabled]]
+									   forKey:KEY_SUBSTITUTION_LINK
+										group:PREF_GROUP_DUAL_WINDOW_INTERFACE];
+}
 
 #pragma mark Writing Direction
 - (void)toggleBaseWritingDirection:(id)sender
diff -r d13301831855 -r 642e389c4035 Frameworks/Adium Framework/Source/ESFileTransfer.h
--- a/Frameworks/Adium Framework/Source/ESFileTransfer.h	Tue Aug 18 14:01:14 2009 -0500
+++ b/Frameworks/Adium Framework/Source/ESFileTransfer.h	Mon Aug 31 07:30:27 2009 -0500
@@ -72,7 +72,7 @@
 
 @property (readwrite, nonatomic, retain) id accountData;
 
- at property (readwrite, nonatomic, retain) id <FileTransferDelegate> delegate;
+ at property (readwrite, nonatomic, assign) id <FileTransferDelegate> delegate;
 
 @property (readonly, nonatomic) BOOL isStopped;
 
diff -r d13301831855 -r 642e389c4035 Frameworks/AutoHyperlinks Framework/Source/AHHyperlinkScanner.m
--- a/Frameworks/AutoHyperlinks Framework/Source/AHHyperlinkScanner.m	Tue Aug 18 14:01:14 2009 -0500
+++ b/Frameworks/AutoHyperlinks Framework/Source/AHHyperlinkScanner.m	Mon Aug 31 07:30:27 2009 -0500
@@ -93,7 +93,7 @@
 		if (!startSet) {
 			NSMutableCharacterSet *mutableStartSet = [[NSMutableCharacterSet alloc] init];
 			[mutableStartSet formUnionWithCharacterSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]];
-			[mutableStartSet formUnionWithCharacterSet:[NSCharacterSet characterSetWithCharactersInString:@"\"'.,:;<?!-@"]];
+			[mutableStartSet formUnionWithCharacterSet:[NSCharacterSet characterSetWithCharactersInString:[NSString stringWithFormat:@"\"'.,:;<?!-@%C%C", 0x2014, 0x2013]]];
 			startSet = [[NSCharacterSet characterSetWithBitmapRepresentation:[mutableStartSet bitmapRepresentation]] retain];
 			[mutableStartSet release];
 		}
diff -r d13301831855 -r 642e389c4035 Frameworks/AutoHyperlinks Framework/Source/AHMarkedHyperlink.m
--- a/Frameworks/AutoHyperlinks Framework/Source/AHMarkedHyperlink.m	Tue Aug 18 14:01:14 2009 -0500
+++ b/Frameworks/AutoHyperlinks Framework/Source/AHMarkedHyperlink.m	Mon Aug 31 07:30:27 2009 -0500
@@ -101,18 +101,24 @@
 
 - (void)setURLFromString:(NSString *)inString
 {
-	NSString	*linkString;
+	NSString	*linkString, *preString;
 
+	preString = (NSString *)CFURLCreateStringByReplacingPercentEscapesUsingEncoding(kCFAllocatorDefault, 
+																					(CFStringRef)inString, 
+																					CFSTR(""), 
+																					kCFStringEncodingUTF8);
+	
 	linkString = (NSString *)CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,
-	                                        (CFStringRef)inString,
-	                                        (CFStringRef)@"#[]",
-	                                        NULL,
-	                                        kCFStringEncodingUTF8); // kCFStringEncodingISOLatin1 );
+																	 preString? (CFStringRef)preString : (CFStringRef)inString,
+																	 (CFStringRef)@"#[]",
+																	 NULL,
+																	 kCFStringEncodingUTF8); // kCFStringEncodingISOLatin1 );
 
 	[linkURL release];
 	linkURL = [[NSURL alloc] initWithString:linkString];
 
 	[linkString release];
+	if(preString) [preString release];
 }
 
 - (void)setValidationStatus:(AH_URI_VERIFICATION_STATUS)status
diff -r d13301831855 -r 642e389c4035 Frameworks/AutoHyperlinks Framework/UnitTests/HyperlinkContextTest.m
--- a/Frameworks/AutoHyperlinks Framework/UnitTests/HyperlinkContextTest.m	Tue Aug 18 14:01:14 2009 -0500
+++ b/Frameworks/AutoHyperlinks Framework/UnitTests/HyperlinkContextTest.m	Mon Aug 31 07:30:27 2009 -0500
@@ -27,6 +27,16 @@
 	STAssertEqualObjects([[link parentString] substringWithRange:[link range]], nil, @"in context: '%@'", testString);
 }
 
+- (void)testURIEscaping:(NSString *)URIString
+{
+	NSString	*testString = [NSString stringWithFormat:@"%@", URIString];
+	AHHyperlinkScanner	*scanner = [AHHyperlinkScanner hyperlinkScannerWithString:URIString];
+	AHMarkedHyperlink	*link = [scanner nextURI];
+	
+	STAssertNotNil(link, @"-[SHHyperlinkScanner nextURL] found no URI in \"%@\"", URIString);
+	STAssertEqualObjects([[link URL] absoluteString], URIString, @"in context: '%@'", URIString);
+}
+
 #pragma mark positive tests
 - (void)testEnclosedURI:(NSString *)URIString {
 	[self testLaxContext:@"<%@>" withURI:URIString];
@@ -64,6 +74,8 @@
 
 - (void)testURIBorder:(NSString *)URIString {
 	[self testLaxContext:@":%@" withURI:URIString];
+	[self testLaxContext:@"—%@" withURI:URIString];
+	[self testLaxContext:@"–%@" withURI:URIString];
 	[self testLaxContext:@"check it out:%@" withURI:URIString];
 	[self testLaxContext:@"%@:" withURI:URIString];
 	[self testLaxContext:@"%@." withURI:URIString];
@@ -216,6 +228,8 @@
 	[self testLaxContext:@"foo (bar) %@" withURI:@"http://example.com/path/to/url.html"];
 	
 	[self testLaxContext:@"%@" withURI:[NSString stringWithFormat:@"%@",@"http://example.com/hi%uthere"]]; //#11160
+	
+	[self testURIEscaping:[NSString stringWithFormat:@"%@",@"http://www.google.com/search?q=foo%20bar"]]; //#12850
 }
 
 - (void)testCompositeContext {
diff -r d13301831855 -r 642e389c4035 Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-enum-types.h
--- a/Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-enum-types.h	Tue Aug 18 14:01:14 2009 -0500
+++ b/Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-enum-types.h	Mon Aug 31 07:30:27 2009 -0500
@@ -1,6 +1,10 @@
 
 /* Generated data (by glib-mkenums) */
 
+#if !defined(__JSON_GLIB_INSIDE__) && !defined(JSON_COMPILATION)
+#error "Only <json-glib/json-glib.h> can be included directly."
+#endif
+
 #ifndef __JSON_ENUM_TYPES_H__
 #define __JSON_ENUM_TYPES_H__
 
@@ -8,11 +12,11 @@
 
 G_BEGIN_DECLS
 
-/* enumerations from "../json-glib/json-parser.h" */
+/* enumerations from "/Sources/adium-1.4/Utilities/dep-build-scripts/source/json-glib-0.7.6/json-glib/json-parser.h" */
 GType json_parser_error_get_type (void) G_GNUC_CONST;
 #define JSON_TYPE_PARSER_ERROR (json_parser_error_get_type())
 
-/* enumerations from "../json-glib/json-types.h" */
+/* enumerations from "/Sources/adium-1.4/Utilities/dep-build-scripts/source/json-glib-0.7.6/json-glib/json-types.h" */
 GType json_node_type_get_type (void) G_GNUC_CONST;
 #define JSON_TYPE_NODE_TYPE (json_node_type_get_type())
 
diff -r d13301831855 -r 642e389c4035 Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-generator.h
--- a/Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-generator.h	Tue Aug 18 14:01:14 2009 -0500
+++ b/Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-generator.h	Mon Aug 31 07:30:27 2009 -0500
@@ -2,21 +2,29 @@
  * 
  * This file is part of JSON-GLib
  * Copyright (C) 2007  OpenedHand Ltd.
+ * Copyright (C) 2009  Intel Corp.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
  * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
+ * version 2.1 of the License, or (at your option) any later version.
  *
  * This library is distributed in the hope that it will be useful,
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  * Lesser General Public License for more details.
  *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
+ *
  * Author:
- *   Emmanuele Bassi  <ebassi at openedhand.com>
+ *   Emmanuele Bassi  <ebassi at linux.intel.com>
  */
 
+#if !defined(__JSON_GLIB_INSIDE__) && !defined(JSON_COMPILATION)
+#error "Only <json-glib/json-glib.h> can be included directly."
+#endif
+
 #ifndef __JSON_GENERATOR_H__
 #define __JSON_GENERATOR_H__
 
diff -r d13301831855 -r 642e389c4035 Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-glib.h
--- a/Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-glib.h	Tue Aug 18 14:01:14 2009 -0500
+++ b/Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-glib.h	Mon Aug 31 07:30:27 2009 -0500
@@ -1,10 +1,39 @@
+/* json-glib.h: Main header
+ *
+ * This file is part of JSON-GLib
+ * Copyright (C) 2007  OpenedHand Ltd.
+ * Copyright (C) 2009  Intel Corp.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
+ *
+ * Author:
+ *   Emmanuele Bassi  <ebassi at linux.intel.com>
+ */
+
 #ifndef __JSON_GLIB_H__
 #define __JSON_GLIB_H__
 
+#define __JSON_GLIB_INSIDE__
+
 #include <json-glib/json-types.h>
 #include <json-glib/json-generator.h>
 #include <json-glib/json-parser.h>
 #include <json-glib/json-version.h>
 #include <json-glib/json-enum-types.h>
 
+#include <json-glib/json-gobject.h>
+
+#undef __JSON_GLIB_INSIDE__
+
 #endif /* __JSON_GLIB_H__ */
diff -r d13301831855 -r 642e389c4035 Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-gobject.h
--- a/Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-gobject.h	Tue Aug 18 14:01:14 2009 -0500
+++ b/Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-gobject.h	Mon Aug 31 07:30:27 2009 -0500
@@ -2,19 +2,23 @@
  * 
  * This file is part of JSON-GLib
  * Copyright (C) 2007  OpenedHand Ltd.
+ * Copyright (C) 2009  Intel Corp.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
  * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
+ * version 2.1 of the License, or (at your option) any later version.
  *
  * This library is distributed in the hope that it will be useful,
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  * Lesser General Public License for more details.
  *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
+ *
  * Author:
- *   Emmanuele Bassi  <ebassi at openedhand.com>
+ *   Emmanuele Bassi  <ebassi at linux.intel.com>
  */
 
 #ifndef __JSON_GOBJECT_H__
diff -r d13301831855 -r 642e389c4035 Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-parser.h
--- a/Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-parser.h	Tue Aug 18 14:01:14 2009 -0500
+++ b/Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-parser.h	Mon Aug 31 07:30:27 2009 -0500
@@ -2,21 +2,29 @@
  * 
  * This file is part of JSON-GLib
  * Copyright (C) 2007  OpenedHand Ltd.
+ * Copyright (C) 2009  Intel Corp.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
  * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
+ * version 2.1 of the License, or (at your option) any later version.
  *
  * This library is distributed in the hope that it will be useful,
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  * Lesser General Public License for more details.
  *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
+ *
  * Author:
- *   Emmanuele Bassi  <ebassi at openedhand.com>
+ *   Emmanuele Bassi  <ebassi at linux.intel.com>
  */
 
+#if !defined(__JSON_GLIB_INSIDE__) && !defined(JSON_COMPILATION)
+#error "Only <json-glib/json-glib.h> can be included directly."
+#endif
+
 #ifndef __JSON_PARSER_H__
 #define __JSON_PARSER_H__
 
diff -r d13301831855 -r 642e389c4035 Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-types.h
--- a/Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-types.h	Tue Aug 18 14:01:14 2009 -0500
+++ b/Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-types.h	Mon Aug 31 07:30:27 2009 -0500
@@ -2,21 +2,29 @@
  * 
  * This file is part of JSON-GLib
  * Copyright (C) 2007  OpenedHand Ltd.
+ * Copyright (C) 2009  Intel Corp.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
  * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
+ * version 2.1 of the License, or (at your option) any later version.
  *
  * This library is distributed in the hope that it will be useful,
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  * Lesser General Public License for more details.
  *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
+ *
  * Author:
- *   Emmanuele Bassi  <ebassi at openedhand.com>
+ *   Emmanuele Bassi  <ebassi at linux.intel.com>
  */
 
+#if !defined(__JSON_GLIB_INSIDE__) && !defined(JSON_COMPILATION)
+#error "Only <json-glib/json-glib.h> can be included directly."
+#endif
+
 #ifndef __JSON_TYPES_H__
 #define __JSON_TYPES_H__
 
@@ -30,13 +38,23 @@
  *
  * Evaluates to the #JsonNodeType contained by @node
  */
-#define JSON_NODE_TYPE(node)    (((JsonNode *) (node))->type)
+#define JSON_NODE_TYPE(node)    (json_node_get_node_type ((node)))
 
 #define JSON_TYPE_NODE          (json_node_get_type ())
 #define JSON_TYPE_OBJECT        (json_object_get_type ())
 #define JSON_TYPE_ARRAY         (json_array_get_type ())
 
 /**
+ * JsonNode:
+ * @type: the type of node
+ *
+ * A generic container of JSON data types. The contents of the #JsonNode
+ * structure are private and should only be accessed via the provided
+ * functions and never directly.
+ */
+typedef struct _JsonNode        JsonNode;
+
+/**
  * JsonObject:
  *
  * A JSON object type. The contents of the #JsonObject structure are private
@@ -52,8 +70,6 @@
  */
 typedef struct _JsonArray       JsonArray;
 
-typedef struct _JsonNode        JsonNode;
-
 /**
  * JsonNodeType:
  * @JSON_NODE_OBJECT: The node contains a #JsonObject
@@ -71,32 +87,52 @@
 } JsonNodeType;
 
 /**
- * JsonNode:
- * @type: the type of node
+ * JsonObjectForeach:
+ * @object: the iterated #JsonObject
+ * @member_name: the name of the member
+ * @member_node: a #JsonNode containing the @member_name value
+ * @user_data: data passed to the function
  *
- * A generic container of JSON data types. The contents of the #JsonNode
- * structure are private and should only be accessed via the provided
- * functions and never directly.
+ * The function to be passed to json_object_foreach_member(). You
+ * should not add or remove members to and from @object within
+ * this function. It is safe to change the value of @member_node.
+ *
+ * Since: 0.8
  */
-struct _JsonNode
-{
-  /*< private >*/
-  JsonNodeType type;
+typedef void (* JsonObjectForeach) (JsonObject  *object,
+                                    const gchar *member_name,
+                                    JsonNode    *member_node,
+                                    gpointer     user_data);
 
-  union {
-    JsonObject *object;
-    JsonArray *array;
-    GValue value;
-  } data;
+/**
+ * JsonArrayForeach:
+ * @array: the iterated #JsonArray
+ * @index_: the index of the element
+ * @element_node: a #JsonNode containing the value at @index_
+ * @user_data: data passed to the function
+ *
+ * The function to be passed to json_array_foreach_element(). You
+ * should not add or remove elements to and from @array within
+ * this function. It is safe to change the value of @element_node.
+ *
+ * Since: 0.8
+ */
+typedef void (* JsonArrayForeach) (JsonArray  *array,
+                                   guint       index_,
+                                   JsonNode   *element_node,
+                                   gpointer    user_data);
 
-  JsonNode *parent;
-};
-
+/*
+ * JsonNode
+ */
 GType                 json_node_get_type        (void) G_GNUC_CONST;
 JsonNode *            json_node_new             (JsonNodeType  type);
 JsonNode *            json_node_copy            (JsonNode     *node);
 void                  json_node_free            (JsonNode     *node);
+JsonNodeType          json_node_get_node_type   (JsonNode     *node);
 GType                 json_node_get_value_type  (JsonNode     *node);
+JsonNode *            json_node_get_parent      (JsonNode     *node);
+G_CONST_RETURN gchar *json_node_type_name       (JsonNode     *node);
 
 void                  json_node_set_object      (JsonNode     *node,
                                                  JsonObject   *object);
@@ -119,51 +155,127 @@
 G_CONST_RETURN gchar *json_node_get_string      (JsonNode     *node);
 gchar *               json_node_dup_string      (JsonNode     *node);
 void                  json_node_set_int         (JsonNode     *node,
-                                                 gint          value);
-gint                  json_node_get_int         (JsonNode     *node);
+                                                 gint64        value);
+gint64                json_node_get_int         (JsonNode     *node);
 void                  json_node_set_double      (JsonNode     *node,
                                                  gdouble       value);
 gdouble               json_node_get_double      (JsonNode     *node);
 void                  json_node_set_boolean     (JsonNode     *node,
                                                  gboolean      value);
 gboolean              json_node_get_boolean     (JsonNode     *node);
-JsonNode *            json_node_get_parent      (JsonNode     *node);
-G_CONST_RETURN gchar *json_node_type_name       (JsonNode     *node);
+gboolean              json_node_is_null         (JsonNode     *node);
 
-GType                 json_object_get_type      (void) G_GNUC_CONST;
-JsonObject *          json_object_new           (void);
-JsonObject *          json_object_ref           (JsonObject  *object);
-void                  json_object_unref         (JsonObject  *object);
-void                  json_object_add_member    (JsonObject  *object,
-                                                 const gchar *member_name,
-                                                 JsonNode    *node);
-GList *               json_object_get_members   (JsonObject  *object);
-JsonNode *            json_object_get_member    (JsonObject  *object,
-                                                 const gchar *member_name);
-JsonNode *            json_object_dup_member    (JsonObject  *object,
-                                                 const gchar *member_name);
-gboolean              json_object_has_member    (JsonObject  *object,
-                                                 const gchar *member_name);
-void                  json_object_remove_member (JsonObject  *object,
-                                                 const gchar *member_name);
-GList *               json_object_get_values    (JsonObject  *object);
-guint                 json_object_get_size      (JsonObject  *object);
+/*
+ * JsonObject
+ */
+GType                 json_object_get_type           (void) G_GNUC_CONST;
+JsonObject *          json_object_new                (void);
+JsonObject *          json_object_ref                (JsonObject  *object);
+void                  json_object_unref              (JsonObject  *object);
 
-GType                 json_array_get_type       (void) G_GNUC_CONST;
-JsonArray *           json_array_new            (void);
-JsonArray *           json_array_sized_new      (guint        n_elements);
-JsonArray *           json_array_ref            (JsonArray   *array);
-void                  json_array_unref          (JsonArray   *array);
-void                  json_array_add_element    (JsonArray   *array,
-                                                 JsonNode    *node);
-GList *               json_array_get_elements   (JsonArray   *array);
-JsonNode *            json_array_get_element    (JsonArray   *array,
-                                                 guint        index_);
-JsonNode *            json_array_dup_element    (JsonArray   *array,
-                                                 guint        index_);
-void                  json_array_remove_element (JsonArray   *array,
-                                                 guint        index_);
-guint                 json_array_get_length     (JsonArray   *array);
+#ifndef JSON_DISABLE_DEPRECATED
+void                  json_object_add_member         (JsonObject  *object,
+                                                      const gchar *member_name,
+                                                      JsonNode    *node) G_GNUC_DEPRECATED;
+#endif /* JSON_DISABLE_DEPRECATED */
+
+void                  json_object_set_member         (JsonObject  *object,
+                                                      const gchar *member_name,
+                                                      JsonNode    *node);
+void                  json_object_set_int_member     (JsonObject  *object,
+                                                      const gchar *member_name,
+                                                      gint64       value);
+void                  json_object_set_double_member  (JsonObject  *object,
+                                                      const gchar *member_name,
+                                                      gdouble      value);
+void                  json_object_set_boolean_member (JsonObject  *object,
+                                                      const gchar *member_name,
+                                                      gboolean     value);
+void                  json_object_set_string_member  (JsonObject  *object,
+                                                      const gchar *member_name,
+                                                      const gchar *value);
+void                  json_object_set_null_member    (JsonObject  *object,
+                                                      const gchar *member_name);
+void                  json_object_set_array_member   (JsonObject  *object,
+                                                      const gchar *member_name,
+                                                      JsonArray   *value);
+void                  json_object_set_object_member  (JsonObject  *object,
+                                                      const gchar *member_name,
+                                                      JsonObject  *value);
+GList *               json_object_get_members        (JsonObject  *object);
+JsonNode *            json_object_get_member         (JsonObject  *object,
+                                                      const gchar *member_name);
+JsonNode *            json_object_dup_member         (JsonObject  *object,
+                                                      const gchar *member_name);
+gint64                json_object_get_int_member     (JsonObject  *object,
+                                                      const gchar *member_name);
+gdouble               json_object_get_double_member  (JsonObject  *object,
+                                                      const gchar *member_name);
+gboolean              json_object_get_boolean_member (JsonObject  *object,
+                                                      const gchar *member_name);
+G_CONST_RETURN gchar *json_object_get_string_member  (JsonObject  *object,
+                                                      const gchar *member_name);
+gboolean              json_object_get_null_member    (JsonObject  *object,
+                                                      const gchar *member_name);
+JsonArray *           json_object_get_array_member   (JsonObject  *object,
+                                                      const gchar *member_name);
+JsonObject *          json_object_get_object_member  (JsonObject  *object,
+                                                      const gchar *member_name);
+gboolean              json_object_has_member         (JsonObject  *object,
+                                                      const gchar *member_name);
+void                  json_object_remove_member      (JsonObject  *object,
+                                                      const gchar *member_name);
+GList *               json_object_get_values         (JsonObject  *object);
+guint                 json_object_get_size           (JsonObject  *object);
+void                  json_object_foreach_member     (JsonObject  *object,
+                                                      JsonObjectForeach func,
+                                                      gpointer     data);
+
+GType                 json_array_get_type            (void) G_GNUC_CONST;
+JsonArray *           json_array_new                 (void);
+JsonArray *           json_array_sized_new           (guint        n_elements);
+JsonArray *           json_array_ref                 (JsonArray   *array);
+void                  json_array_unref               (JsonArray   *array);
+void                  json_array_add_element         (JsonArray   *array,
+                                                      JsonNode    *node);
+void                  json_array_add_int_element     (JsonArray   *array,
+                                                      gint64       value);
+void                  json_array_add_double_element  (JsonArray   *array,
+                                                      gdouble      value);
+void                  json_array_add_boolean_element (JsonArray   *array,
+                                                      gboolean     value);
+void                  json_array_add_string_element  (JsonArray   *array,
+                                                      const gchar *value);
+void                  json_array_add_null_element    (JsonArray   *array);
+void                  json_array_add_array_element   (JsonArray   *array,
+                                                      JsonArray   *value);
+void                  json_array_add_object_element  (JsonArray   *array,
+                                                      JsonObject  *value);
+GList *               json_array_get_elements        (JsonArray   *array);
+JsonNode *            json_array_get_element         (JsonArray   *array,
+                                                      guint        index_);
+gint64                json_array_get_int_element     (JsonArray   *array,
+                                                      guint        index_);
+gdouble               json_array_get_double_element  (JsonArray   *array,
+                                                      guint        index_);
+gboolean              json_array_get_boolean_element (JsonArray   *array,
+                                                      guint        index_);
+G_CONST_RETURN gchar *json_array_get_string_element  (JsonArray   *array,
+                                                      guint        index_);
+gboolean              json_array_get_null_element    (JsonArray   *array,
+                                                      guint        index_);
+JsonArray *           json_array_get_array_element   (JsonArray   *array,
+                                                      guint        index_);
+JsonObject *          json_array_get_object_element  (JsonArray   *array,
+                                                      guint        index_);
+JsonNode *            json_array_dup_element         (JsonArray   *array,
+                                                      guint        index_);
+void                  json_array_remove_element      (JsonArray   *array,
+                                                      guint        index_);
+guint                 json_array_get_length          (JsonArray   *array);
+void                  json_array_foreach_element     (JsonArray   *array,
+                                                      JsonArrayForeach func,
+                                                      gpointer     data);
 
 G_END_DECLS
 
diff -r d13301831855 -r 642e389c4035 Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-version.h
--- a/Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-version.h	Tue Aug 18 14:01:14 2009 -0500
+++ b/Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-version.h	Mon Aug 31 07:30:27 2009 -0500
@@ -2,21 +2,29 @@
  * 
  * This file is part of JSON-GLib
  * Copyright (C) 2007  OpenedHand Ltd.
+ * Copyright (C) 2009  Intel Corp.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
  * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
+ * version 2.1 of the License, or (at your option) any later version.
  *
  * This library is distributed in the hope that it will be useful,
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  * Lesser General Public License for more details.
  *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
+ *
  * Author:
- *   Emmanuele Bassi  <ebassi at openedhand.com>
+ *   Emmanuele Bassi  <ebassi at linux.intel.com>
  */
 
+#if !defined(__JSON_GLIB_INSIDE__) && !defined(JSON_COMPILATION)
+#error "Only <json-glib/json-glib.h> can be included directly."
+#endif
+
 #ifndef __JSON_VERSION_H__
 #define __JSON_VERSION_H__
 
@@ -40,21 +48,21 @@
  *
  * Json minor version component (e.g. 2 if %JSON_VERSION is 1.2.3)
  */
-#define JSON_MINOR_VERSION              (6)
+#define JSON_MINOR_VERSION              (7)
 
 /**
  * JSON_MICRO_VERSION:
  *
  * Json micro version component (e.g. 3 if %JSON_VERSION is 1.2.3)
  */
-#define JSON_MICRO_VERSION              (2)
+#define JSON_MICRO_VERSION              (6)
 
 /**
  * JSON_VERSION
  *
  * Json version.
  */
-#define JSON_VERSION                    (0.6.2)
+#define JSON_VERSION                    (0.7.6)
 
 /**
  * JSON_VERSION_S:
@@ -62,7 +70,7 @@
  * Json version, encoded as a string, useful for printing and
  * concatenation.
  */
-#define JSON_VERSION_S                  "0.6.2"
+#define JSON_VERSION_S                  "0.7.6"
 
 /**
  * JSON_VERSION_HEX:
diff -r d13301831855 -r 642e389c4035 Frameworks/libjson-glib.framework/Versions/1.0.0/libjson-glib
Binary file Frameworks/libjson-glib.framework/Versions/1.0.0/libjson-glib has changed
diff -r d13301831855 -r 642e389c4035 Frameworks/libpurple.framework/Versions/0.6.0/Headers/account.h
--- a/Frameworks/libpurple.framework/Versions/0.6.0/Headers/account.h	Tue Aug 18 14:01:14 2009 -0500
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1065 +0,0 @@
-/**
- * @file account.h Account API
- * @ingroup core
- * @see @ref account-signals
- */
-
-/* purple
- *
- * Purple is the legal property of its developers, whose names are too numerous
- * to list here.  Please refer to the COPYRIGHT file distributed with this
- * source distribution.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02111-1301  USA
- */
-#ifndef _PURPLE_ACCOUNT_H_
-#define _PURPLE_ACCOUNT_H_
-
-#include <glib.h>
-#include <glib-object.h>
-
-/** @copydoc _PurpleAccountUiOps */
-typedef struct _PurpleAccountUiOps PurpleAccountUiOps;
-/** @copydoc _PurpleAccount */
-typedef struct _PurpleAccount      PurpleAccount;
-


More information about the commits mailing list