diff options
Diffstat (limited to 'services/audioflinger/AudioFlinger.cpp')
-rw-r--r-- | services/audioflinger/AudioFlinger.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/services/audioflinger/AudioFlinger.cpp b/services/audioflinger/AudioFlinger.cpp index eb00c82..c1c95f8 100644 --- a/services/audioflinger/AudioFlinger.cpp +++ b/services/audioflinger/AudioFlinger.cpp @@ -1313,6 +1313,8 @@ sp<IAudioRecord> AudioFlinger::openRecord( IAudioFlinger::track_flags_t *flags, pid_t tid, int *sessionId, + sp<IMemory>& cblk, + sp<IMemory>& buffers, status_t *status) { sp<RecordThread::RecordTrack> recordTrack; @@ -1321,6 +1323,9 @@ sp<IAudioRecord> AudioFlinger::openRecord( status_t lStatus; int lSessionId; + cblk.clear(); + buffers.clear(); + // check calling permissions if (!recordingAllowed()) { ALOGE("openRecord() permission denied: recording not allowed"); @@ -1396,6 +1401,9 @@ sp<IAudioRecord> AudioFlinger::openRecord( goto Exit; } + cblk = recordTrack->getCblk(); + buffers = recordTrack->getBuffers(); + // return handle to client recordHandle = new RecordHandle(recordTrack); |