diff options
author | Daniel Levin <dendy@ti.com> | 2012-02-06 13:42:33 +0200 |
---|---|---|
committer | Daniel Levin <dendy@ti.com> | 2012-07-25 08:55:40 -0500 |
commit | f31c9c5c5a1b05a0bb6f6fa955924bfa16a4c9f9 (patch) | |
tree | b8ad0202cd17cf441a7d9d412bba23d6ec5d7f42 /camera/Encoder_libjpeg.cpp | |
parent | 42b39d18f6b07cb7322e0988bfe1e3004ee352dc (diff) | |
download | android_hardware_ti_omap4-f31c9c5c5a1b05a0bb6f6fa955924bfa16a4c9f9.tar.gz android_hardware_ti_omap4-f31c9c5c5a1b05a0bb6f6fa955924bfa16a4c9f9.tar.bz2 android_hardware_ti_omap4-f31c9c5c5a1b05a0bb6f6fa955924bfa16a4c9f9.zip |
CameraHAL: Fixed crash while resizing NV12 frame
When doing video snapshot NV12 frame is resizing for thumbnail
using external NV12_resize library. Missing initialization of
structConvImage.uOffset field was causing random crashes accessing
source frame data in VT_resizeFrame_Video_opt2_lp() function.
Signed-off-by: Daniel Levin <dendy@ti.com>
Change-Id: I4fda98ba1c24cf54c7d90bffe074105a292096f6
Diffstat (limited to 'camera/Encoder_libjpeg.cpp')
-rw-r--r-- | camera/Encoder_libjpeg.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/camera/Encoder_libjpeg.cpp b/camera/Encoder_libjpeg.cpp index 5dfc8ce..7eb49fb 100644 --- a/camera/Encoder_libjpeg.cpp +++ b/camera/Encoder_libjpeg.cpp @@ -184,6 +184,7 @@ static void resize_nv12(Encoder_libjpeg::params* params, uint8_t* dst_buffer) { i_img_ptr.eFormat = IC_FORMAT_YCbCr420_lp; i_img_ptr.imgPtr = (uint8_t*) params->src; i_img_ptr.clrPtr = i_img_ptr.imgPtr + (i_img_ptr.uWidth * i_img_ptr.uHeight); + i_img_ptr.uOffset = 0; //ouput o_img_ptr.uWidth = params->out_width; @@ -192,6 +193,7 @@ static void resize_nv12(Encoder_libjpeg::params* params, uint8_t* dst_buffer) { o_img_ptr.eFormat = IC_FORMAT_YCbCr420_lp; o_img_ptr.imgPtr = dst_buffer; o_img_ptr.clrPtr = o_img_ptr.imgPtr + (o_img_ptr.uWidth * o_img_ptr.uHeight); + o_img_ptr.uOffset = 0; VT_resizeFrame_Video_opt2_lp(&i_img_ptr, &o_img_ptr, NULL, 0); } |