summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBernhard Rosenkraenzer <Bernhard.Rosenkranzer@linaro.org>2012-08-16 20:23:01 +0200
committerBernhard Rosenkraenzer <Bernhard.Rosenkranzer@linaro.org>2012-11-14 00:52:12 +0100
commit6cde493e4ad6d6cd1f40e24ad2ea9b14b2e5332a (patch)
tree249c0da19d888b9d09ce7b2fc02349514c82e3aa
parent8c3e7de7d76717e90658bfdf0c0411625454b8c5 (diff)
av: Fix aliasing violations in AudioFlinger
Change-Id: Iec37ad0c2e30f34d72f8bf63c6c1aeceba0e3d50 Signed-off-by: Bernhard Rosenkraenzer <Bernhard.Rosenkranzer@linaro.org>
-rw-r--r--services/audioflinger/AudioFlinger.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/services/audioflinger/AudioFlinger.cpp b/services/audioflinger/AudioFlinger.cpp
index 76d64476..c5eece4d 100644
--- a/services/audioflinger/AudioFlinger.cpp
+++ b/services/audioflinger/AudioFlinger.cpp
@@ -8472,7 +8472,8 @@ status_t AudioFlinger::EffectModule::configure()
p->psize = sizeof(uint32_t);
p->vsize = sizeof(uint32_t);
size = sizeof(int);
- *(int32_t *)p->data = VISUALIZER_PARAM_LATENCY;
+ int32_t d = VISUALIZER_PARAM_LATENCY;
+ memcpy(&p->data, &d, sizeof(int32_t)); // *(int32_t *)p->data = VISUALIZER_PARAM_LATENCY;
uint32_t latency = 0;
PlaybackThread *pbt = thread->mAudioFlinger->checkPlaybackThread_l(thread->mId);
@@ -8480,7 +8481,7 @@ status_t AudioFlinger::EffectModule::configure()
latency = pbt->latency_l();
}
- *((int32_t *)p->data + 1)= latency;
+ memcpy(&p->data + sizeof(int32_t), &latency, sizeof(uint32_t)); //*((int32_t *)p->data + 1)= latency;
(*mEffectInterface)->command(mEffectInterface,
EFFECT_CMD_SET_PARAM,
sizeof(effect_param_t) + 8,