From c9efe47e9de00b829782657db40986859e941f0e Mon Sep 17 00:00:00 2001 From: Thong Nguyen Date: Fri, 22 Mar 2013 11:40:00 +0000 Subject: [PATCH] Fix CoreFoundationDataSource not releasing resources as early as possible --- .../UserInterfaceState.xcuserstate | Bin 26490 -> 26547 bytes Audjustable/Classes/AudioPlayer/AudioPlayer.m | 2 ++ .../AudioPlayer/CoreFoundationDataSource.m | 10 ++++++++++ 3 files changed, 12 insertions(+) diff --git a/Audjustable.xcodeproj/project.xcworkspace/xcuserdata/tum.xcuserdatad/UserInterfaceState.xcuserstate b/Audjustable.xcodeproj/project.xcworkspace/xcuserdata/tum.xcuserdatad/UserInterfaceState.xcuserstate index d12d7992c06081041a1e96ff46ff2ed79f079780..aefcec4dbc9949c7a04d9c6f55a75769c6d976fa 100644 GIT binary patch literal 26547 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%0Dbw@A-OpGbM6e`H{!A~G$qBC;WJUgWaKw<14_ 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 diff --git a/Audjustable/Classes/AudioPlayer/AudioPlayer.m b/Audjustable/Classes/AudioPlayer/AudioPlayer.m index 412f92e..550763f 100644 --- a/Audjustable/Classes/AudioPlayer/AudioPlayer.m +++ b/Audjustable/Classes/AudioPlayer/AudioPlayer.m @@ -1439,6 +1439,7 @@ static void AudioQueueIsRunningCallbackProc(void* userData, AudioQueueRef audioQ currentlyReadingEntry.dataSource.delegate = nil; [currentlyReadingEntry.dataSource unregisterForEvents]; + [currentlyReadingEntry.dataSource close]; if (currentlyPlayingEntry) { @@ -1467,6 +1468,7 @@ static void AudioQueueIsRunningCallbackProc(void* userData, AudioQueueRef audioQ { currentlyReadingEntry.dataSource.delegate = nil; [currentlyReadingEntry.dataSource unregisterForEvents]; + [currentlyReadingEntry.dataSource close]; if (currentlyPlayingEntry) { diff --git a/Audjustable/Classes/AudioPlayer/CoreFoundationDataSource.m b/Audjustable/Classes/AudioPlayer/CoreFoundationDataSource.m index 2bfb96c..b6c52ad 100644 --- a/Audjustable/Classes/AudioPlayer/CoreFoundationDataSource.m +++ b/Audjustable/Classes/AudioPlayer/CoreFoundationDataSource.m @@ -87,6 +87,16 @@ static void ReadStreamCallbackProc(CFReadStreamRef stream, CFStreamEventType eve } } +-(void) close +{ + if (stream) + { + CFReadStreamClose(stream); + + stream = 0; + } +} + -(void) seekToOffset:(long long)offset { }