kdrive/UnregisterFd: Fix off by one
The number of FDs has been decremented already, therefore the
number contained the index of the top one that is to me moved down.
This problem was introduced by:
commit 1110b71e36
Author: Chris Clayton <chris2553@googlemail.com>
kdrive: fix build error on gcc 4.8 for out-of-bounds array access
The reason for the warning was likely a confused compiler.
Hoping to reduce the confusion by moving the decrement behind the end
if the copy loop.
Signed-off-by: Egbert Eich <eich@suse.de>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
This commit is contained in:
parent
eb36924ead
commit
44d0fd435a
|
@ -220,9 +220,9 @@ KdUnregisterFd(void *closure, int fd, Bool do_close)
|
|||
KdRemoveFd(kdInputFds[i].fd);
|
||||
if (do_close)
|
||||
close(kdInputFds[i].fd);
|
||||
kdNumInputFds--;
|
||||
for (j = i; j < (kdNumInputFds - 1); j++)
|
||||
kdInputFds[j] = kdInputFds[j + 1];
|
||||
kdNumInputFds--;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user