Hi again,

just one question: How can I read a kernel double linked list in reverse
order?
Or, better to say, how can I access the 'last' (the item that linkes to the
head again) item, if all I got is a pointer to the head?

I've tried this one, but it doesn't seem to work:
lastitem = CONTAINING_RECORD(DoubleHead.Blink,MYSTRUCT, linkfield);

Any ideas?

Thanks a lot
Peter

Re: [newbie] Linked list problem by Doron

Doron
Sun Sep 19 10:40:24 CDT 2004

that should work, you need to check if the list is not empty first though,
ie

if (IsListEmpty(&DoubleHead) == FALSE) {
lastitem = CONTAINING_RECORD(DoubleHead.Blink,MYSTRUCT, linkfield);
}

d

--
Please do not send e-mail directly to this alias. this alias is for
newsgroup purposes only.
This posting is provided "AS IS" with no warranties, and confers no rights.


"Peter Schmitz" <PeterSchmitz@discussions.microsoft.com> wrote in message
news:2A3A063C-FDBC-4498-95E8-47A5EAD87285@microsoft.com...
> Hi again,
>
> just one question: How can I read a kernel double linked list in reverse
> order?
> Or, better to say, how can I access the 'last' (the item that linkes to
> the
> head again) item, if all I got is a pointer to the head?
>
> I've tried this one, but it doesn't seem to work:
> lastitem = CONTAINING_RECORD(DoubleHead.Blink,MYSTRUCT, linkfield);
>
> Any ideas?
>
> Thanks a lot
> Peter