Commit 9c67b789 authored by Daniel Kurtz's avatar Daniel Kurtz Committed by Henrik Rydberg
Browse files

Input: atmel_mxt_ts - use scnprintf for object sysfs entry



Using scnprintf() is a cleaner way to ensure that we don't overwrite the
PAGE_SIZE sysfs output buffer.

Signed-off-by: default avatarDaniel Kurtz <djkurtz@chromium.org>
Signed-off-by: default avatarHenrik Rydberg <rydberg@euromail.se>
parent 55d6867f
Loading
Loading
Loading
Loading
+4 −12
Original line number Diff line number Diff line
@@ -904,17 +904,13 @@ static ssize_t mxt_object_show(struct device *dev,
	for (i = 0; i < data->info.object_num; i++) {
		object = data->object_table + i;

		count += snprintf(buf + count, PAGE_SIZE - count,
		count += scnprintf(buf + count, PAGE_SIZE - count,
				"Object[%d] (Type %d)\n",
				i + 1, object->type);
		if (count >= PAGE_SIZE)
			return PAGE_SIZE - 1;

		if (!mxt_object_readable(object->type)) {
			count += snprintf(buf + count, PAGE_SIZE - count,
			count += scnprintf(buf + count, PAGE_SIZE - count,
					"\n");
			if (count >= PAGE_SIZE)
				return PAGE_SIZE - 1;
			continue;
		}

@@ -924,15 +920,11 @@ static ssize_t mxt_object_show(struct device *dev,
			if (error)
				return error;

			count += snprintf(buf + count, PAGE_SIZE - count,
			count += scnprintf(buf + count, PAGE_SIZE - count,
					"\t[%2d]: %02x (%d)\n", j, val, val);
			if (count >= PAGE_SIZE)
				return PAGE_SIZE - 1;
		}

		count += snprintf(buf + count, PAGE_SIZE - count, "\n");
		if (count >= PAGE_SIZE)
			return PAGE_SIZE - 1;
		count += scnprintf(buf + count, PAGE_SIZE - count, "\n");
	}

	return count;