diff options
| author | Wei Jia <wjia@google.com> | 2015-09-10 09:47:29 -0700 | 
|---|---|---|
| committer | Wei Jia <wjia@google.com> | 2015-09-16 09:42:09 -0700 | 
| commit | 3b76870d146b1350db8a2f7797e06897c8c92dc2 (patch) | |
| tree | 21a471721a075c7848d738916f1fb293be2bb3e9 /media | |
| parent | cc0942d0c2a57c5025063c62689ee01b39736dc2 (diff) | |
| download | frameworks_av-3b76870d146b1350db8a2f7797e06897c8c92dc2.zip frameworks_av-3b76870d146b1350db8a2f7797e06897c8c92dc2.tar.gz frameworks_av-3b76870d146b1350db8a2f7797e06897c8c92dc2.tar.bz2  | |
DO NOT MERGE - IAudioFlinger: always initialize variables to ensure no info leak when writing them to Parcel.
Bug: 23953967
Change-Id: Ibbe841da149038675e9e8daea76c77558bc8564b
(cherry picked from commit 983dca391a76fb45df999fc40e8766b9ddb63511)
Diffstat (limited to 'media')
| -rw-r--r-- | media/libmedia/IAudioFlinger.cpp | 22 | ||||
| -rw-r--r-- | media/libmedia/IAudioPolicyService.cpp | 6 | 
2 files changed, 14 insertions, 14 deletions
diff --git a/media/libmedia/IAudioFlinger.cpp b/media/libmedia/IAudioFlinger.cpp index d31de58..a6ed199 100644 --- a/media/libmedia/IAudioFlinger.cpp +++ b/media/libmedia/IAudioFlinger.cpp @@ -924,7 +924,7 @@ status_t BnAudioFlinger::onTransact(              pid_t tid = (pid_t) data.readInt32();              int sessionId = data.readInt32();              int clientUid = data.readInt32(); -            status_t status; +            status_t status = NO_ERROR;              sp<IAudioTrack> track;              if ((haveSharedBuffer && (buffer == 0)) ||                      ((buffer != 0) && (buffer->pointer() == NULL))) { @@ -957,7 +957,7 @@ status_t BnAudioFlinger::onTransact(              size_t notificationFrames = data.readInt64();              sp<IMemory> cblk;              sp<IMemory> buffers; -            status_t status; +            status_t status = NO_ERROR;              sp<IAudioRecord> record = openRecord(input,                      sampleRate, format, channelMask, &frameCount, &flags, tid, &sessionId,                      ¬ificationFrames, @@ -1097,7 +1097,7 @@ status_t BnAudioFlinger::onTransact(              audio_devices_t devices = (audio_devices_t)data.readInt32();              String8 address(data.readString8());              audio_output_flags_t flags = (audio_output_flags_t) data.readInt32(); -            uint32_t latencyMs; +            uint32_t latencyMs = 0;              audio_io_handle_t output;              status_t status = openOutput(module, &output, &config,                                           &devices, address, &latencyMs, flags); @@ -1176,8 +1176,8 @@ status_t BnAudioFlinger::onTransact(          case GET_RENDER_POSITION: {              CHECK_INTERFACE(IAudioFlinger, data, reply);              audio_io_handle_t output = (audio_io_handle_t) data.readInt32(); -            uint32_t halFrames; -            uint32_t dspFrames; +            uint32_t halFrames = 0; +            uint32_t dspFrames = 0;              status_t status = getRenderPosition(&halFrames, &dspFrames, output);              reply->writeInt32(status);              if (status == NO_ERROR) { @@ -1213,7 +1213,7 @@ status_t BnAudioFlinger::onTransact(          } break;          case QUERY_NUM_EFFECTS: {              CHECK_INTERFACE(IAudioFlinger, data, reply); -            uint32_t numEffects; +            uint32_t numEffects = 0;              status_t status = queryNumberEffects(&numEffects);              reply->writeInt32(status);              if (status == NO_ERROR) { @@ -1223,7 +1223,7 @@ status_t BnAudioFlinger::onTransact(          }          case QUERY_EFFECT: {              CHECK_INTERFACE(IAudioFlinger, data, reply); -            effect_descriptor_t desc; +            effect_descriptor_t desc = {};              status_t status = queryEffect(data.readInt32(), &desc);              reply->writeInt32(status);              if (status == NO_ERROR) { @@ -1235,7 +1235,7 @@ status_t BnAudioFlinger::onTransact(              CHECK_INTERFACE(IAudioFlinger, data, reply);              effect_uuid_t uuid;              data.read(&uuid, sizeof(effect_uuid_t)); -            effect_descriptor_t desc; +            effect_descriptor_t desc = {};              status_t status = getEffectDescriptor(&uuid, &desc);              reply->writeInt32(status);              if (status == NO_ERROR) { @@ -1253,9 +1253,9 @@ status_t BnAudioFlinger::onTransact(              int32_t priority = data.readInt32();              audio_io_handle_t output = (audio_io_handle_t) data.readInt32();              int sessionId = data.readInt32(); -            status_t status; -            int id; -            int enabled; +            status_t status = NO_ERROR; +            int id = 0; +            int enabled = 0;              sp<IEffect> effect = createEffect(&desc, client, priority, output, sessionId,                      &status, &id, &enabled); diff --git a/media/libmedia/IAudioPolicyService.cpp b/media/libmedia/IAudioPolicyService.cpp index e6e01aa..e840956 100644 --- a/media/libmedia/IAudioPolicyService.cpp +++ b/media/libmedia/IAudioPolicyService.cpp @@ -1071,9 +1071,9 @@ status_t BnAudioPolicyService::onTransact(              CHECK_INTERFACE(IAudioPolicyService, data, reply);              sp<IAudioPolicyServiceClient> client = interface_cast<IAudioPolicyServiceClient>(                      data.readStrongBinder()); -            audio_session_t session; -            audio_io_handle_t ioHandle; -            audio_devices_t device; +            audio_session_t session = {}; +            audio_io_handle_t ioHandle = {}; +            audio_devices_t device = {};              status_t status = acquireSoundTriggerSession(&session, &ioHandle, &device);              reply->writeInt32(status);              if (status == NO_ERROR) {  | 
