Merge pull request #146 from myell0w/patch-1

I promise, this time I really fixed it...
This commit is contained in:
Mattt Thompson 2011-12-10 05:32:03 -08:00
commit 049fef5888

View file

@ -43,15 +43,16 @@ static NSData * AFJSONEncode(id object, NSError **error) {
[invocation invoke]; [invocation invoke];
[invocation getReturnValue:&data]; [invocation getReturnValue:&data];
} else if (_SBJSONSelector && [NSString instancesRespondToSelector:_SBJSONSelector]) { } else if (_SBJSONSelector && [object respondsToSelector:_SBJSONSelector]) {
// Create a string representation of JSON, to use SBJSON -`JSONValue` category method NSString *JSONString = nil;
NSString *string = [[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding] autorelease]; NSInvocation *invocation = [NSInvocation invocationWithMethodSignature:[object methodSignatureForSelector:_SBJSONSelector]];
NSInvocation *invocation = [NSInvocation invocationWithMethodSignature:[string methodSignatureForSelector:_SBJSONSelector]]; invocation.target = object;
invocation.target = string;
invocation.selector = _SBJSONSelector; invocation.selector = _SBJSONSelector;
[invocation invoke]; [invocation invoke];
[invocation getReturnValue:&JSON]; [invocation getReturnValue:&data];
data = [JSONString dataUsingEncoding:NSUTF8StringEncoding];
} else if (_YAJLSelector && [object respondsToSelector:_YAJLSelector]) { } else if (_YAJLSelector && [object respondsToSelector:_YAJLSelector]) {
@try { @try {
NSString *JSONString = nil; NSString *JSONString = nil;
@ -108,10 +109,10 @@ static id AFJSONDecode(NSData *data, NSError **error) {
[invocation invoke]; [invocation invoke];
[invocation getReturnValue:&JSON]; [invocation getReturnValue:&JSON];
} else if (_SBJSONSelector && [data respondsToSelector:_SBJSONSelector]) { } else if (_SBJSONSelector && [NSString instancesRespondToSelector:_SBJSONSelector]) {
// Create a string representation of JSON, to use SBJSON -`JSONValue` category method // Create a string representation of JSON, to use SBJSON -`JSONValue` category method
NSString *string = [[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding] autorelease]; NSString *string = [[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding] autorelease];
NSInvocation *invocation = [NSInvocation invocationWithMethodSignature:[data methodSignatureForSelector:_SBJSONSelector]]; NSInvocation *invocation = [NSInvocation invocationWithMethodSignature:[string methodSignatureForSelector:_SBJSONSelector]];
invocation.target = string; invocation.target = string;
invocation.selector = _SBJSONSelector; invocation.selector = _SBJSONSelector;