On Thu, Apr 23, 2009 at 11:39, Alan Jenkins <alan-jenkins@tuffmail.co.uk> wrote:
> I'm puzzled by this function:
>
> /* if we have not seen this seqnum, check if it is/was already queued */
> if (seqnum < udev_queue->last_seen_udev_seqnum) {
> udev_queue_get_udev_seqnum(udev_queue);
> if (seqnum < udev_queue->last_seen_udev_seqnum)
>
> Shouldn't the test be (seqnum > udev_queue->last_seen_udev_seqnum) ?
if (udev_queue == NULL)
return -EINVAL;
/* if we have not seen this seqnum, check if it is/was already queued */
- if (seqnum < udev_queue->last_seen_udev_seqnum) {
- udev_queue_get_udev_seqnum(udev_queue);
- if (seqnum < udev_queue->last_seen_udev_seqnum)
+ if (seqnum > udev_queue->last_seen_udev_seqnum)
+ if (seqnum > udev_queue_get_udev_seqnum(udev_queue))
return 0;
- }
+
snprintf(filename, sizeof(filename), "%s/.udev/queue/%llu",
udev_get_dev_path(udev_queue->udev), seqnum);
if (lstat(filename, &statbuf) == 0)