From: Amarinder Bindra Date: Thu, 13 Mar 2014 07:48:46 +0000 (+0530) Subject: viddec3test: close file descriptor created for input buffer X-Git-Url: https://git.ti.com/gitweb?p=glsdk%2Fomapdrmtest.git;a=commitdiff_plain;h=a86cb27e1da9b4d67b9ef6efabb3cf1e103eb803 viddec3test: close file descriptor created for input buffer omap_bo_dmabuf creates a dup file descriptor for the caller to use the buffers. The caller needs to explicitly close the dup fd to avoid any fd leak. Adding the close of fd for the input buffer stream. Signed-off-by: Amarinder Bindra --- diff --git a/viddec3test.c b/viddec3test.c index cd915ba..20fc252 100644 --- a/viddec3test.c +++ b/viddec3test.c @@ -89,7 +89,11 @@ decoder_close(struct decoder *decoder) if (decoder->status) dce_free(decoder->status); if (decoder->params) dce_free(decoder->params); if (decoder->dynParams) dce_free(decoder->dynParams); - if (decoder->inBufs) dce_free(decoder->inBufs); + if (decoder->inBufs) { + dce_buf_unlock(1, &(decoder->inBufs->descs[0].buf)); + close(decoder->inBufs->descs[0].buf); + dce_free(decoder->inBufs); + } if (decoder->outBufs) dce_free(decoder->outBufs); if (decoder->inArgs) dce_free(decoder->inArgs); if (decoder->outArgs) dce_free(decoder->outArgs); @@ -275,6 +279,7 @@ decoder_open(int argc, char **argv) decoder->inBufs = dce_alloc(sizeof(XDM2_BufDesc)); decoder->inBufs->numBufs = 1; decoder->inBufs->descs[0].buf = (XDAS_Int8 *)omap_bo_dmabuf(decoder->input_bo); + dce_buf_lock(1, &(decoder->inBufs->descs[0].buf)); decoder->inBufs->descs[0].bufSize.bytes = omap_bo_size(decoder->input_bo); decoder->inBufs->descs[0].memType = XDM_MEMTYPE_RAW;