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

Commit dff9351b authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "msm: mdss: fix possible overflow errors in panel_debug_base_reg_read"

parents 43285adb 697c126d
Loading
Loading
Loading
Loading
+4 −8
Original line number Diff line number Diff line
@@ -231,23 +231,19 @@ static ssize_t panel_debug_base_reg_read(struct file *file,
	mdss_dsi_panel_cmd_read(ctrl_pdata, panel_reg[0], panel_reg[1],
				NULL, rx_buf, dbg->cnt);

	len = snprintf(panel_reg_buf, reg_buf_len, "0x%02zx: ", dbg->off);
	if (len < 0)
		goto read_reg_fail;
	len = scnprintf(panel_reg_buf, reg_buf_len, "0x%02zx: ", dbg->off);

	for (i = 0; (len < reg_buf_len) && (i < ctrl_pdata->rx_len); i++)
		len += scnprintf(panel_reg_buf + len, reg_buf_len - len,
				"0x%02x ", rx_buf[i]);

	if (len)
		panel_reg_buf[len - 1] = '\n';

	if (mdata->debug_inf.debug_enable_clock)
		mdata->debug_inf.debug_enable_clock(0);

	if (len < 0 || len >= sizeof(panel_reg_buf))
		return 0;

	if ((count < sizeof(panel_reg_buf))
	if ((count < reg_buf_len)
			|| (copy_to_user(user_buf, panel_reg_buf, len)))
		goto read_reg_fail;