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

Commit 11941a32 authored by Jiri Kosina's avatar Jiri Kosina
Browse files

Merge branch 'field-zeroing' into for-linus

parents f61c9127 46386b58
Loading
Loading
Loading
Loading
+5 −0
Original line number Original line Diff line number Diff line
@@ -872,8 +872,13 @@ static void hid_output_field(struct hid_field *field, __u8 *data)
	unsigned count = field->report_count;
	unsigned count = field->report_count;
	unsigned offset = field->report_offset;
	unsigned offset = field->report_offset;
	unsigned size = field->report_size;
	unsigned size = field->report_size;
	unsigned bitsused = offset + count * size;
	unsigned n;
	unsigned n;


	/* make sure the unused bits in the last byte are zeros */
	if (count > 0 && size > 0 && (bitsused % 8) != 0)
		data[(bitsused-1)/8] &= (1 << (bitsused % 8)) - 1;

	for (n = 0; n < count; n++) {
	for (n = 0; n < count; n++) {
		if (field->logical_minimum < 0)	/* signed values */
		if (field->logical_minimum < 0)	/* signed values */
			implement(data, offset + n * size, size, s32ton(field->value[n], size));
			implement(data, offset + n * size, size, s32ton(field->value[n], size));