From b2ec3cb7d4d695d27f61428b74f9aae173959cc9 Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Thu, 13 Feb 2020 16:39:20 +1000 Subject: [PATCH] Make the code for handling before/after SYN_DROPPED slot values more readable Signed-off-by: Peter Hutterer --- libevdev/libevdev.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/libevdev/libevdev.c b/libevdev/libevdev.c index d4d20b7..430add0 100644 --- a/libevdev/libevdev.c +++ b/libevdev/libevdev.c @@ -684,17 +684,19 @@ sync_mt_state(struct libevdev *dev, int create_events) goto out; for (int slot = 0; slot < dev->num_slots; slot++) { - if (*slot_value(dev, slot, axis) == mt_state.val[slot]) + int val_before = *slot_value(dev, slot, axis), + val_after = mt_state.val[slot]; + + if (val_before == val_after) continue; if (axis == ABS_MT_TRACKING_ID && - *slot_value(dev, slot, axis) != -1 && - mt_state.val[slot] != -1) { + val_before != -1 && val_after != -1) { set_bit(tracking_id_changes, slot); need_tracking_id_changes = 1; } - *slot_value(dev, slot, axis) = mt_state.val[slot]; + *slot_value(dev, slot, axis) = val_after; set_bit(slot_update[slot], axis); /* note that this slot has updates */