if(prevItem == last)
last = item;
+ link.prev = prevItem ? prevItem : (circ ? last : null);
if(prevItem)
{
link.next = prevLink.next;
{
link.next = first;
first = item;
+ if(circ)
+ {
+ if(link.prev)
+ ((Item)((byte *)link.prev + offset)).next = item;
+ else
+ link.next = item;
+ }
}
- link.prev = prevItem;
if(link.next)
((Item) ((byte *)link.next + offset)).prev = item;
}
if(prevItem == last)
last = item;
+ item.link.prev = prevItem ? prevItem : (circ ? last : null);
if(prevItem)
{
item.link.next = prevItem.link.next;
{
item.link.next = first;
first = item;
+ if(circ)
+ {
+ if(item.link.prev)
+ item.link.prev.link.next = item;
+ else
+ item.link.next = item;
+ }
}
- item.link.prev = prevItem;
if(item.link.next)
item.link.next.link.prev = item;
}