Эх сурвалжийг харах

Merge "video: driver: Add index check in enum format"

qctecmdr 4 жил өмнө
parent
commit
76b516e7e6

+ 4 - 0
driver/vidc/src/msm_vdec.c

@@ -2380,6 +2380,8 @@ int msm_vdec_enum_fmt(struct msm_vidc_inst *inst, struct v4l2_fmtdesc *f)
 				idx++;
 			}
 		}
+		if (!array[f->index])
+			return -EINVAL;
 		f->pixelformat = v4l2_codec_from_driver(array[f->index],
 				__func__);
 		if (!f->pixelformat)
@@ -2401,6 +2403,8 @@ int msm_vdec_enum_fmt(struct msm_vidc_inst *inst, struct v4l2_fmtdesc *f)
 				}
 			}
 		}
+		if (!array[f->index])
+			return -EINVAL;
 		f->pixelformat = v4l2_colorformat_from_driver(array[f->index],
 				__func__);
 		if (!f->pixelformat)

+ 4 - 0
driver/vidc/src/msm_venc.c

@@ -1673,6 +1673,8 @@ int msm_venc_enum_fmt(struct msm_vidc_inst *inst, struct v4l2_fmtdesc *f)
 				idx++;
 			}
 		}
+		if (!array[f->index])
+			return -EINVAL;
 		f->pixelformat = v4l2_codec_from_driver(array[f->index],
 				__func__);
 		if (!f->pixelformat)
@@ -1691,6 +1693,8 @@ int msm_venc_enum_fmt(struct msm_vidc_inst *inst, struct v4l2_fmtdesc *f)
 				idx++;
 			}
 		}
+		if (!array[f->index])
+			return -EINVAL;
 		f->pixelformat = v4l2_colorformat_from_driver(array[f->index],
 				__func__);
 		if (!f->pixelformat)

+ 1 - 0
driver/vidc/src/venus_hfi_response.c

@@ -1295,6 +1295,7 @@ static int handle_session_property(struct msm_vidc_inst *inst,
 			msm_vidc_update_cap_value(inst, ENTROPY_MODE,
 				V4L2_MPEG_VIDEO_H264_ENTROPY_MODE_CAVLC,
 				__func__);
+		break;
 	case HFI_PROP_DPB_LIST:
 		if (is_decode_session(inst) && port == OUTPUT_PORT &&
 			inst->capabilities->cap[DPB_LIST].value) {