diff options
author | xhwang@chromium.org <xhwang@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-10-27 18:35:11 +0000 |
---|---|---|
committer | xhwang@chromium.org <xhwang@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-10-27 18:35:11 +0000 |
commit | 16c7368c59025ee0a12c3763b788b32d05dfa815 (patch) | |
tree | 3a2a284e921b831eef18fa81a1d04033c0da5aef /webkit/plugins | |
parent | 388fa8db3cbd75cd2ca239411e4c75783cb2b1c2 (diff) | |
download | chromium_src-16c7368c59025ee0a12c3763b788b32d05dfa815.zip chromium_src-16c7368c59025ee0a12c3763b788b32d05dfa815.tar.gz chromium_src-16c7368c59025ee0a12c3763b788b32d05dfa815.tar.bz2 |
Fix type punning error in (de)serializing audio frames.
*(reinterpret_cast<Foo*>(pointer_of_type_bar)) is not safe. Replace it with memcpy.
TBR=viettrungluu@chromium.org
BUG=none
TEST=CDM decrypt-and-decode audio is still working.
Review URL: https://chromiumcodereview.appspot.com/11304010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@164555 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/plugins')
-rw-r--r-- | webkit/plugins/ppapi/ppapi_plugin_instance.cc | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/webkit/plugins/ppapi/ppapi_plugin_instance.cc b/webkit/plugins/ppapi/ppapi_plugin_instance.cc index 749f469..cd78ea8 100644 --- a/webkit/plugins/ppapi/ppapi_plugin_instance.cc +++ b/webkit/plugins/ppapi/ppapi_plugin_instance.cc @@ -418,11 +418,11 @@ bool DeserializeAudioFrames(PP_Resource audio_frames, if (bytes_left < kHeaderSize) return false; - timestamp = *(reinterpret_cast<const int64*>(cur)); + memcpy(×tamp, cur, sizeof(timestamp)); cur += sizeof(timestamp); bytes_left -= sizeof(timestamp); - frame_size = *(reinterpret_cast<const int64*>(cur)); + memcpy(&frame_size, cur, sizeof(frame_size)); cur += sizeof(frame_size); bytes_left -= sizeof(frame_size); |