mirror of
https://github.com/winfsp/winfsp.git
synced 2025-04-24 01:13:04 -05:00
sys: ioq
This commit is contained in:
parent
0d74769c07
commit
3d381145e3
@ -93,17 +93,17 @@ static PIRP FspIoqPendingPeekNextIrp(PIO_CSQ IoCsq, PIRP Irp, PVOID PeekContext)
|
||||
PLIST_ENTRY Entry = 0 == Irp ? Head->Flink : Irp->Tail.Overlay.ListEntry.Flink;
|
||||
if (Head == Entry)
|
||||
return 0;
|
||||
Irp = CONTAINING_RECORD(Entry, IRP, Tail.Overlay.ListEntry);
|
||||
if (!PeekContext)
|
||||
return CONTAINING_RECORD(Entry, IRP, Tail.Overlay.ListEntry);
|
||||
return Irp;
|
||||
PVOID IrpHint = ((FSP_IOQ_PEEK_CONTEXT *)PeekContext)->IrpHint;
|
||||
if (0 == IrpHint)
|
||||
{
|
||||
ULONGLONG ExpirationTime = ((FSP_IOQ_PEEK_CONTEXT *)PeekContext)->ExpirationTime;
|
||||
return FspIrpContext(Irp)->ExpirationTime <= ExpirationTime ?
|
||||
CONTAINING_RECORD(Entry, IRP, Tail.Overlay.ListEntry) : 0;
|
||||
return FspIrpContext(Irp)->ExpirationTime <= ExpirationTime ? Irp : 0;
|
||||
}
|
||||
else
|
||||
return CONTAINING_RECORD(Entry, IRP, Tail.Overlay.ListEntry);
|
||||
return Irp;
|
||||
}
|
||||
|
||||
_IRQL_raises_(DISPATCH_LEVEL)
|
||||
@ -157,14 +157,14 @@ static PIRP FspIoqProcessPeekNextIrp(PIO_CSQ IoCsq, PIRP Irp, PVOID PeekContext)
|
||||
PLIST_ENTRY Entry = 0 == Irp ? Head->Flink : Irp->Tail.Overlay.ListEntry.Flink;
|
||||
if (Head == Entry)
|
||||
return 0;
|
||||
Irp = CONTAINING_RECORD(Entry, IRP, Tail.Overlay.ListEntry);
|
||||
if (!PeekContext)
|
||||
return CONTAINING_RECORD(Entry, IRP, Tail.Overlay.ListEntry);
|
||||
return Irp;
|
||||
PVOID IrpHint = ((FSP_IOQ_PEEK_CONTEXT *)PeekContext)->IrpHint;
|
||||
if (0 == IrpHint)
|
||||
{
|
||||
ULONGLONG ExpirationTime = ((FSP_IOQ_PEEK_CONTEXT *)PeekContext)->ExpirationTime;
|
||||
return FspIrpContext(Irp)->ExpirationTime <= ExpirationTime ?
|
||||
CONTAINING_RECORD(Entry, IRP, Tail.Overlay.ListEntry) : 0;
|
||||
return FspIrpContext(Irp)->ExpirationTime <= ExpirationTime ? Irp : 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user