diff --git a/control.c b/control.c index 5d3ba3d..27cca9c 100644 --- a/control.c +++ b/control.c @@ -119,7 +119,7 @@ static int control_iocontrol_destroy_device(struct vcam_device_spec *dev_spec) spin_unlock_irqrestore(&dev->in_fh_slock, flags); spin_lock_irqsave(&ctldev->vcam_devices_lock, flags); - for (i = dev_spec->idx; i < (ctldev->vcam_device_count); i++) + for (i = dev_spec->idx; i + 1 < (ctldev->vcam_device_count); i++) ctldev->vcam_devices[i] = ctldev->vcam_devices[i + 1]; ctldev->vcam_devices[--ctldev->vcam_device_count] = NULL; spin_unlock_irqrestore(&ctldev->vcam_devices_lock, flags);