Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c00bf107 authored by Samantha Tran's avatar Samantha Tran
Browse files

disp: msm: add proper null checks and propagate error



Fix possible null pointer dereferencing and propagate error
code during early return.

Signed-off-by: default avatarSamantha Tran <samtran@codeaurora.org>
parent c70f6471
Loading
Loading
Loading
Loading
+7 −2
Original line number Diff line number Diff line
@@ -493,12 +493,17 @@ int dp_connector_atomic_check(struct drm_connector *connector,
	struct drm_connector_state *c_state)
{
	struct sde_connector *sde_conn;
	struct drm_connector_state *old_state =
		drm_atomic_get_old_connector_state(c_state->state, connector);
	struct drm_connector_state *old_state;

	if (!connector || !display)
		return -EINVAL;

	old_state =
		drm_atomic_get_old_connector_state(c_state->state, connector);

	if (!old_state)
		return -EINVAL;

	sde_conn = to_sde_connector(connector);

	/*
+3 −1
Original line number Diff line number Diff line
@@ -378,8 +378,10 @@ struct drm_framebuffer *msm_framebuffer_init(struct drm_device *dev,
		const struct drm_format_info *info;

		info = drm_format_info(mode_cmd->pixel_format);
		if (!info || num_planes > ARRAY_SIZE(info->cpp))
		if (!info || num_planes > ARRAY_SIZE(info->cpp)) {
			ret = -EINVAL;
			goto fail;
		}

		for (i = 0; i < num_planes; i++) {
			unsigned int width = mode_cmd->width / (i ? hsub : 1);