msm: vidc: set EOS on output buffer pending transaction

If EOS is signalled while an output buffer is in transaction,
mark EOS when that buffer is returned.
This is observed in case client sends an empty buffer with EOS.

Change-Id: Idc050c9a76157bcf8a80e254e550f956537f98f1
Signed-off-by: Praveen Chavan <pchavan@codeaurora.org>
This commit is contained in:
Praveen Chavan
2013-04-18 11:34:22 -07:00
committed by Iliyan Malchev
parent d21217ca8d
commit e69a3cf5a5

View File

@@ -2359,8 +2359,16 @@ u32 vcd_handle_frame_done(
if (cctxt->decoding)
op_frm->vcd_frm.frame = transc->frame;
else
transc->frame = op_frm->vcd_frm.frame;
else {
transc->frame = op_frm->vcd_frm.frame;
if ((transc->flags & VCD_FRAME_FLAG_EOS) &&
!(op_frm->vcd_frm.flags & VCD_FRAME_FLAG_EOS)) {
op_frm->vcd_frm.flags |= VCD_FRAME_FLAG_EOS;
pr_err("%s: add EOS flag to the output "\
"from transc(0x%x)",
__func__, (u32)transc);
}
}
transc->frame_done = true;
if (transc->input_done && transc->frame_done) {