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;
|
PLIST_ENTRY Entry = 0 == Irp ? Head->Flink : Irp->Tail.Overlay.ListEntry.Flink;
|
||||||
if (Head == Entry)
|
if (Head == Entry)
|
||||||
return 0;
|
return 0;
|
||||||
|
Irp = CONTAINING_RECORD(Entry, IRP, Tail.Overlay.ListEntry);
|
||||||
if (!PeekContext)
|
if (!PeekContext)
|
||||||
return CONTAINING_RECORD(Entry, IRP, Tail.Overlay.ListEntry);
|
return Irp;
|
||||||
PVOID IrpHint = ((FSP_IOQ_PEEK_CONTEXT *)PeekContext)->IrpHint;
|
PVOID IrpHint = ((FSP_IOQ_PEEK_CONTEXT *)PeekContext)->IrpHint;
|
||||||
if (0 == IrpHint)
|
if (0 == IrpHint)
|
||||||
{
|
{
|
||||||
ULONGLONG ExpirationTime = ((FSP_IOQ_PEEK_CONTEXT *)PeekContext)->ExpirationTime;
|
ULONGLONG ExpirationTime = ((FSP_IOQ_PEEK_CONTEXT *)PeekContext)->ExpirationTime;
|
||||||
return FspIrpContext(Irp)->ExpirationTime <= ExpirationTime ?
|
return FspIrpContext(Irp)->ExpirationTime <= ExpirationTime ? Irp : 0;
|
||||||
CONTAINING_RECORD(Entry, IRP, Tail.Overlay.ListEntry) : 0;
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
return CONTAINING_RECORD(Entry, IRP, Tail.Overlay.ListEntry);
|
return Irp;
|
||||||
}
|
}
|
||||||
|
|
||||||
_IRQL_raises_(DISPATCH_LEVEL)
|
_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;
|
PLIST_ENTRY Entry = 0 == Irp ? Head->Flink : Irp->Tail.Overlay.ListEntry.Flink;
|
||||||
if (Head == Entry)
|
if (Head == Entry)
|
||||||
return 0;
|
return 0;
|
||||||
|
Irp = CONTAINING_RECORD(Entry, IRP, Tail.Overlay.ListEntry);
|
||||||
if (!PeekContext)
|
if (!PeekContext)
|
||||||
return CONTAINING_RECORD(Entry, IRP, Tail.Overlay.ListEntry);
|
return Irp;
|
||||||
PVOID IrpHint = ((FSP_IOQ_PEEK_CONTEXT *)PeekContext)->IrpHint;
|
PVOID IrpHint = ((FSP_IOQ_PEEK_CONTEXT *)PeekContext)->IrpHint;
|
||||||
if (0 == IrpHint)
|
if (0 == IrpHint)
|
||||||
{
|
{
|
||||||
ULONGLONG ExpirationTime = ((FSP_IOQ_PEEK_CONTEXT *)PeekContext)->ExpirationTime;
|
ULONGLONG ExpirationTime = ((FSP_IOQ_PEEK_CONTEXT *)PeekContext)->ExpirationTime;
|
||||||
return FspIrpContext(Irp)->ExpirationTime <= ExpirationTime ?
|
return FspIrpContext(Irp)->ExpirationTime <= ExpirationTime ? Irp : 0;
|
||||||
CONTAINING_RECORD(Entry, IRP, Tail.Overlay.ListEntry) : 0;
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user