[Wine-patches] [eterhack 3/7] ntoskrnl.exe: Use IoCallDriver.

Alexander Morozov =?iso-8859-1?q?amorozov_=CE=C1_etersoft=2Eru?=
Чт Мар 26 19:53:57 MSK 2009


---
 dlls/ntoskrnl.exe/ntoskrnl.c |   14 ++++++--------
 1 files changed, 6 insertions(+), 8 deletions(-)

diff --git a/dlls/ntoskrnl.exe/ntoskrnl.c b/dlls/ntoskrnl.exe/ntoskrnl.c
index 98aae05..ba7b51c 100644
--- a/dlls/ntoskrnl.exe/ntoskrnl.c
+++ b/dlls/ntoskrnl.exe/ntoskrnl.c
@@ -151,8 +151,6 @@ struct HandleInstance
                        "jmp " __ASM_NAME("__regs_") #name )
 #endif
 
-NTSTATUS WINAPI __regs_IofCallDriver( DEVICE_OBJECT *device, IRP *irp );
-
 static inline LPCSTR debugstr_us( const UNICODE_STRING *us )
 {
     if (!us) return "<null>";
@@ -249,7 +247,7 @@ static NTSTATUS get_device_id( DEVICE_OBJECT *pdo, BUS_QUERY_ID_TYPE id_type,
     irpsp->MajorFunction = IRP_MJ_PNP;
     irpsp->MinorFunction = IRP_MN_QUERY_ID;
     irpsp->Parameters.QueryId.IdType = id_type;
-    status = __regs_IofCallDriver( pdo, irp );
+    status = IoCallDriver( pdo, irp );
     if (status == STATUS_SUCCESS)
         *id = (WCHAR *)irp->IoStatus.Information;
     IoFreeIrp( irp );
@@ -475,7 +473,7 @@ static NTSTATUS process_ioctl( DEVICE_OBJECT *device, ULONG code, void *in_buff,
     }
 
     KeQueryTickCount( &count );  /* update the global KeTickCount */
-    status = __regs_IofCallDriver( device, irp );
+    status = IoCallDriver( device, irp );
     if (process)
     {
         NtWriteVirtualMemory( process, saved_ptr, data, sizeof(data), NULL );
@@ -519,7 +517,7 @@ static NTSTATUS process_read( DEVICE_OBJECT *device, void *buff, ULONG *size )
     else irp->UserBuffer = buff;
 
     KeQueryTickCount( &count );  /* update the global KeTickCount */
-    status = __regs_IofCallDriver( device, irp );
+    status = IoCallDriver( device, irp );
     *size = (status == STATUS_SUCCESS) ? irp->IoStatus.Information : 0;
     IoFreeIrp( irp );
     return status;
@@ -723,7 +721,7 @@ NTSTATUS CDECL __wine_start_device( DRIVER_OBJECT *driver )
     irpsp->MinorFunction = IRP_MN_START_DEVICE;
     irpsp->DeviceObject = device;
     device->CurrentIrp = irp;
-    status = __regs_IofCallDriver( device, irp );
+    status = IoCallDriver( device, irp );
     IoFreeIrp( irp );
     return status;
 }
@@ -1270,7 +1268,7 @@ void WINAPI IoInvalidateDeviceRelations( PDEVICE_OBJECT DeviceObject,
         irpsp->MajorFunction = IRP_MJ_PNP;
         irpsp->MinorFunction = IRP_MN_QUERY_DEVICE_RELATIONS;
         irpsp->Parameters.QueryDeviceRelations.Type = BusRelations;
-        status = __regs_IofCallDriver( DeviceObject, irp );
+        status = IoCallDriver( DeviceObject, irp );
         rel = (DEVICE_RELATIONS *)irp->IoStatus.Information;
         if (status == STATUS_SUCCESS && rel && rel->Count)
         {
@@ -1285,7 +1283,7 @@ void WINAPI IoInvalidateDeviceRelations( PDEVICE_OBJECT DeviceObject,
                 irpsp->MajorFunction = IRP_MJ_PNP;
                 irpsp->MinorFunction = IRP_MN_QUERY_ID;
                 irpsp->Parameters.QueryId.IdType = BusQueryDeviceID;
-                status = __regs_IofCallDriver( rel->Objects[k], irp );
+                status = IoCallDriver( rel->Objects[k], irp );
                 if (status == STATUS_SUCCESS)
                 {
                     WCHAR *service;
-- 
1.6.1.3.GIT



Подробная информация о списке рассылки Wine-patches