From 3780b2a2bdca3c199ad5993461ae9cf81f3e377c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mostafa=20Torbj=C3=B8rn=20Berg?= Date: Tue, 14 Jan 2014 14:30:32 +0100 Subject: [PATCH] Removed an iOS7 Deprecated function Minor code change to avoid using CFReadStreamCopyProperty and also fail if an error occurs --- .../Classes/AudioPlayer/LocalFileDataSource.m | 22 ++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/Audjustable/Classes/AudioPlayer/LocalFileDataSource.m b/Audjustable/Classes/AudioPlayer/LocalFileDataSource.m index 9678ade..7e8c2ef 100644 --- a/Audjustable/Classes/AudioPlayer/LocalFileDataSource.m +++ b/Audjustable/Classes/AudioPlayer/LocalFileDataSource.m @@ -123,9 +123,25 @@ stream = CFReadStreamCreateWithFile(NULL, (__bridge CFURLRef)url); - SInt32 errorCode; - - NSNumber* number = (__bridge_transfer NSNumber*)CFURLCreatePropertyFromResource(NULL, (__bridge CFURLRef)url, kCFURLFileLength, &errorCode); + NSError *fileError; + + NSFileManager *manager = [[NSFileManager alloc] init]; + + NSString *path = [NSString stringWithUTF8String:[url fileSystemRepresentation]]; + + NSDictionary *attributes = [manager attributesOfItemAtPath:path + error:&fileError]; + + if (fileError) + { + CFReadStreamClose(stream); + CFRelease(stream); + stream = 0; + return; + } + + NSNumber* number = [attributes objectForKey:@"NSFileSize"]; + if (number) {