mirror of
https://github.com/winfsp/winfsp.git
synced 2025-07-03 17:32:57 -05:00
sys: FspFsextProvider: load provider driver
This commit is contained in:
@ -329,7 +329,7 @@ static NTSTATUS FspFsvolDeviceInit(PDEVICE_OBJECT DeviceObject)
|
||||
if (0 != FsvolDeviceExtension->VolumeParams.FsextControlCode)
|
||||
{
|
||||
FSP_FSEXT_PROVIDER *Provider = FspFsextProvider(
|
||||
FsvolDeviceExtension->VolumeParams.FsextControlCode);
|
||||
FsvolDeviceExtension->VolumeParams.FsextControlCode, &Result);
|
||||
if (0 != Provider)
|
||||
{
|
||||
Result = Provider->DeviceInit(DeviceObject, &FsvolDeviceExtension->VolumeParams);
|
||||
@ -337,6 +337,11 @@ static NTSTATUS FspFsvolDeviceInit(PDEVICE_OBJECT DeviceObject)
|
||||
return Result;
|
||||
FsvolDeviceExtension->InitDoneFsext = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
ASSERT(!NT_SUCCESS(Result));
|
||||
return Result;
|
||||
}
|
||||
}
|
||||
|
||||
/* is there a virtual disk? */
|
||||
@ -519,7 +524,7 @@ static VOID FspFsvolDeviceFini(PDEVICE_OBJECT DeviceObject)
|
||||
if (FsvolDeviceExtension->InitDoneFsext)
|
||||
{
|
||||
FSP_FSEXT_PROVIDER *Provider = FspFsextProvider(
|
||||
FsvolDeviceExtension->VolumeParams.FsextControlCode);
|
||||
FsvolDeviceExtension->VolumeParams.FsextControlCode, 0);
|
||||
if (0 != Provider)
|
||||
Provider->DeviceFini(DeviceObject);
|
||||
}
|
||||
@ -573,7 +578,7 @@ static VOID FspFsvolDeviceExpirationRoutine(PVOID Context)
|
||||
if (0 != FsvolDeviceExtension->VolumeParams.FsextControlCode)
|
||||
{
|
||||
FSP_FSEXT_PROVIDER *Provider = FspFsextProvider(
|
||||
FsvolDeviceExtension->VolumeParams.FsextControlCode);
|
||||
FsvolDeviceExtension->VolumeParams.FsextControlCode, 0);
|
||||
if (0 != Provider)
|
||||
Provider->DeviceExpirationRoutine(DeviceObject, InterruptTime);
|
||||
}
|
||||
|
Reference in New Issue
Block a user