Fix a memory leak if VideoPortInitialize is called more than once from the same miniport.
Replace STDCALL with NTAPI.
Modified: trunk/reactos/drivers/video/videoprt/agp.c
Modified: trunk/reactos/drivers/video/videoprt/ddc.c
Modified: trunk/reactos/drivers/video/videoprt/dispatch.c
Modified: trunk/reactos/drivers/video/videoprt/dma.c
Modified: trunk/reactos/drivers/video/videoprt/event.c
Modified: trunk/reactos/drivers/video/videoprt/int10.c
Modified: trunk/reactos/drivers/video/videoprt/interrupt.c
Modified: trunk/reactos/drivers/video/videoprt/resource.c
Modified: trunk/reactos/drivers/video/videoprt/services.c
Modified: trunk/reactos/drivers/video/videoprt/spinlock.c
Modified: trunk/reactos/drivers/video/videoprt/timer.c
Modified: trunk/reactos/drivers/video/videoprt/videoprt.c
Modified: trunk/reactos/drivers/video/videoprt/videoprt.h

Modified: trunk/reactos/drivers/video/videoprt/agp.c
--- trunk/reactos/drivers/video/videoprt/agp.c	2005-08-24 20:34:50 UTC (rev 17519)
+++ trunk/reactos/drivers/video/videoprt/agp.c	2005-08-24 21:29:24 UTC (rev 17520)
@@ -91,7 +91,7 @@
 }
 
 
-BOOLEAN STDCALL
+BOOLEAN NTAPI
 IntAgpCommitPhysical(
    IN PVOID HwDeviceExtension,
    IN PVOID PhysicalContext,
@@ -123,7 +123,7 @@
    return NT_SUCCESS(Status);
 }
 
-VOID STDCALL
+VOID NTAPI
 IntAgpFreePhysical(
    IN PVOID HwDeviceExtension,
    IN PVOID PhysicalContext,
@@ -151,7 +151,7 @@
    }
 }
 
-VOID STDCALL
+VOID NTAPI
 IntAgpReleasePhysical(
    IN PVOID HwDeviceExtension,
    IN PVOID PhysicalContext)
@@ -180,7 +180,7 @@
    ExFreePool(AgpMapping);
 }
 
-PHYSICAL_ADDRESS STDCALL
+PHYSICAL_ADDRESS NTAPI
 IntAgpReservePhysical(
    IN  PVOID HwDeviceExtension,
    IN  ULONG Pages,
@@ -245,7 +245,7 @@
 }
    
 
-PVOID STDCALL
+PVOID NTAPI
 IntAgpCommitVirtual(
    IN PVOID HwDeviceExtension,
    IN PVOID VirtualContext,
@@ -327,7 +327,7 @@
    return BaseAddress;
 }
 
-VOID STDCALL
+VOID NTAPI
 IntAgpFreeVirtual(
    IN PVOID HwDeviceExtension,
    IN PVOID VirtualContext,
@@ -381,7 +381,7 @@
    }
 }
 
-VOID STDCALL
+VOID NTAPI
 IntAgpReleaseVirtual(
    IN PVOID HwDeviceExtension,
    IN PVOID VirtualContext)
@@ -415,7 +415,7 @@
    ExFreePool(VirtualMapping);
 }
 
-PVOID STDCALL
+PVOID NTAPI
 IntAgpReserveVirtual(
    IN  PVOID HwDeviceExtension,
    IN  HANDLE ProcessHandle,
@@ -475,7 +475,7 @@
 }
 
 
-BOOLEAN STDCALL
+BOOLEAN NTAPI
 IntAgpSetRate(
    IN PVOID HwDeviceExtension,
    IN ULONG Rate)
@@ -492,7 +492,7 @@
 }
 
 
-NTSTATUS STDCALL
+NTSTATUS NTAPI
 IntAgpGetInterface(
    IN PVOID HwDeviceExtension,
    IN OUT PINTERFACE Interface)

Modified: trunk/reactos/drivers/video/videoprt/ddc.c
--- trunk/reactos/drivers/video/videoprt/ddc.c	2005-08-24 20:34:50 UTC (rev 17519)
+++ trunk/reactos/drivers/video/videoprt/ddc.c	2005-08-24 21:29:24 UTC (rev 17520)
@@ -168,7 +168,7 @@
  * @implemented
  */
 
-BOOLEAN STDCALL
+BOOLEAN NTAPI
 VideoPortDDCMonitorHelper(
    PVOID HwDeviceExtension,
    PVOID I2CFunctions,

Modified: trunk/reactos/drivers/video/videoprt/dispatch.c
--- trunk/reactos/drivers/video/videoprt/dispatch.c	2005-08-24 20:34:50 UTC (rev 17519)
+++ trunk/reactos/drivers/video/videoprt/dispatch.c	2005-08-24 21:29:24 UTC (rev 17520)
@@ -25,8 +25,8 @@
 
 /* EXTERNAL FUNCTIONS *********************************************************/
 
-VOID STDCALL HalAcquireDisplayOwnership(IN PHAL_RESET_DISPLAY_PARAMETERS ResetDisplayParameters);
-VOID STDCALL HalReleaseDisplayOwnership();
+VOID NTAPI HalAcquireDisplayOwnership(IN PHAL_RESET_DISPLAY_PARAMETERS ResetDisplayParameters);
+VOID NTAPI HalReleaseDisplayOwnership();
 
 /* GLOBAL VARIABLES ***********************************************************/
 
@@ -38,7 +38,7 @@
  * Reset display to blue screen
  */
 
-BOOLEAN STDCALL
+BOOLEAN NTAPI
 IntVideoPortResetDisplayParameters(ULONG Columns, ULONG Rows)
 {
    PVIDEO_PORT_DRIVER_EXTENSION DriverExtension;
@@ -63,7 +63,7 @@
    return FALSE;
 }
 
-NTSTATUS STDCALL
+NTSTATUS NTAPI
 IntVideoPortAddDevice(
    IN PDRIVER_OBJECT DriverObject,
    IN PDEVICE_OBJECT PhysicalDeviceObject)
@@ -96,7 +96,7 @@
  *    PASSIVE_LEVEL
  */
 
-NTSTATUS STDCALL
+NTSTATUS NTAPI
 IntVideoPortDispatchOpen(
    IN PDEVICE_OBJECT DeviceObject,
    IN PIRP Irp)
@@ -166,7 +166,7 @@
  *    PASSIVE_LEVEL
  */
 
-NTSTATUS STDCALL
+NTSTATUS NTAPI
 IntVideoPortDispatchClose(
    IN PDEVICE_OBJECT DeviceObject,
    IN PIRP Irp)
@@ -198,7 +198,7 @@
  *    PASSIVE_LEVEL
  */
 
-NTSTATUS STDCALL
+NTSTATUS NTAPI
 IntVideoPortDispatchDeviceControl(
    IN PDEVICE_OBJECT DeviceObject,
    IN PIRP Irp)
@@ -264,7 +264,7 @@
    return Status;
 }
 
-NTSTATUS STDCALL
+NTSTATUS NTAPI
 IntVideoPortPnPStartDevice(
    IN PDEVICE_OBJECT DeviceObject,
    IN PIRP Irp)
@@ -352,7 +352,7 @@
 
 
 NTSTATUS
-STDCALL
+NTAPI
 IntVideoPortForwardIrpAndWaitCompletionRoutine(
     PDEVICE_OBJECT Fdo,
     PIRP Irp,
@@ -368,7 +368,7 @@
 
 
 NTSTATUS
-STDCALL
+NTAPI
 IntVideoPortForwardIrpAndWait(PDEVICE_OBJECT DeviceObject, PIRP Irp)
 {
    KEVENT Event;
@@ -390,7 +390,7 @@
 }
 
 
-NTSTATUS STDCALL
+NTSTATUS NTAPI
 IntVideoPortDispatchPnp(
    IN PDEVICE_OBJECT DeviceObject,
    IN PIRP Irp)
@@ -442,7 +442,7 @@
    return Status;
 }
 
-NTSTATUS STDCALL
+NTSTATUS NTAPI
 IntVideoPortDispatchCleanup(
    IN PDEVICE_OBJECT DeviceObject,
    IN PIRP Irp)
@@ -459,7 +459,7 @@
    return STATUS_SUCCESS;
 }
 
-NTSTATUS STDCALL
+NTSTATUS NTAPI
 IntVideoPortDispatchPower(
    IN PDEVICE_OBJECT DeviceObject,
    IN PIRP Irp)
@@ -467,7 +467,7 @@
    return STATUS_NOT_IMPLEMENTED;
 }
 
-VOID STDCALL
+VOID NTAPI
 IntVideoPortUnload(PDRIVER_OBJECT DriverObject)
 {
 }

Modified: trunk/reactos/drivers/video/videoprt/dma.c
--- trunk/reactos/drivers/video/videoprt/dma.c	2005-08-24 20:34:50 UTC (rev 17519)
+++ trunk/reactos/drivers/video/videoprt/dma.c	2005-08-24 21:29:24 UTC (rev 17520)
@@ -29,7 +29,7 @@
  * @implemented
  */
 
-PVOID STDCALL
+PVOID NTAPI
 VideoPortAllocateCommonBuffer(
    IN PVOID HwDeviceExtension,
    IN PVP_DMA_ADAPTER VpDmaAdapter,
@@ -49,7 +49,7 @@
  * @implemented
  */
 
-VOID STDCALL
+VOID NTAPI
 VideoPortReleaseCommonBuffer(
    IN PVOID HwDeviceExtension,
    IN PVP_DMA_ADAPTER VpDmaAdapter,
@@ -70,7 +70,7 @@
  * @unimplemented
  */
 
-VOID STDCALL
+VOID NTAPI
 VideoPortPutDmaAdapter(
    IN PVOID HwDeviceExtension,
    IN PVP_DMA_ADAPTER VpDmaAdapter)
@@ -82,7 +82,7 @@
  * @unimplemented
  */
 
-PVP_DMA_ADAPTER STDCALL
+PVP_DMA_ADAPTER NTAPI
 VideoPortGetDmaAdapter(
    IN PVOID HwDeviceExtension,
    IN PVP_DEVICE_DESCRIPTION VpDeviceExtension)

Modified: trunk/reactos/drivers/video/videoprt/event.c
--- trunk/reactos/drivers/video/videoprt/event.c	2005-08-24 20:34:50 UTC (rev 17519)
+++ trunk/reactos/drivers/video/videoprt/event.c	2005-08-24 21:29:24 UTC (rev 17520)
@@ -29,7 +29,7 @@
  * @implemented
  */
 
-VP_STATUS STDCALL
+VP_STATUS NTAPI
 VideoPortCreateEvent(
    IN PVOID HwDeviceExtension,
    IN ULONG EventFlag,
@@ -59,7 +59,7 @@
  * @implemented
  */
 
-VP_STATUS STDCALL
+VP_STATUS NTAPI
 VideoPortDeleteEvent(
    IN PVOID HwDeviceExtension,
    IN PEVENT Event)
@@ -72,7 +72,7 @@
  * @implemented
  */
 
-LONG STDCALL
+LONG NTAPI
 VideoPortSetEvent(
    IN PVOID HwDeviceExtension,
    IN PEVENT Event)
@@ -84,7 +84,7 @@
  * @implemented
  */
 
-VOID STDCALL
+VOID NTAPI
 VideoPortClearEvent(
    IN PVOID HwDeviceExtension,
    IN PEVENT Event)
@@ -96,7 +96,7 @@
  * @implemented
  */
 
-VP_STATUS STDCALL
+VP_STATUS NTAPI
 VideoPortWaitForSingleObject(
    IN PVOID HwDeviceExtension,
    IN PVOID Object,

Modified: trunk/reactos/drivers/video/videoprt/int10.c
--- trunk/reactos/drivers/video/videoprt/int10.c	2005-08-24 20:34:50 UTC (rev 17519)
+++ trunk/reactos/drivers/video/videoprt/int10.c	2005-08-24 21:29:24 UTC (rev 17520)
@@ -26,7 +26,7 @@
 
 /* PRIVATE FUNCTIONS **********************************************************/
 
-VP_STATUS STDCALL
+VP_STATUS NTAPI
 IntInt10AllocateBuffer(
    IN PVOID Context,
    OUT PUSHORT Seg,
@@ -74,7 +74,7 @@
    return NO_ERROR;
 }
 
-VP_STATUS STDCALL
+VP_STATUS NTAPI
 IntInt10FreeBuffer(
    IN PVOID Context,
    IN USHORT Seg,
@@ -97,7 +97,7 @@
    return Status;
 }
 
-VP_STATUS STDCALL
+VP_STATUS NTAPI
 IntInt10ReadMemory(
    IN PVOID Context,
    IN USHORT Seg,
@@ -121,7 +121,7 @@
    return NO_ERROR;
 }
 
-VP_STATUS STDCALL
+VP_STATUS NTAPI
 IntInt10WriteMemory(
    IN PVOID Context,
    IN USHORT Seg,
@@ -145,7 +145,7 @@
    return NO_ERROR;
 }
 
-VP_STATUS STDCALL
+VP_STATUS NTAPI
 IntInt10CallBios(
    IN PVOID Context,
    IN OUT PINT10_BIOS_ARGUMENTS BiosArguments)
@@ -200,7 +200,7 @@
  * @implemented
  */
 
-VP_STATUS STDCALL
+VP_STATUS NTAPI
 VideoPortInt10(
    IN PVOID HwDeviceExtension,
    IN PVIDEO_X86_BIOS_ARGUMENTS BiosArguments)

Modified: trunk/reactos/drivers/video/videoprt/interrupt.c
--- trunk/reactos/drivers/video/videoprt/interrupt.c	2005-08-24 20:34:50 UTC (rev 17519)
+++ trunk/reactos/drivers/video/videoprt/interrupt.c	2005-08-24 21:29:24 UTC (rev 17520)
@@ -25,7 +25,7 @@
 
 /* PRIVATE FUNCTIONS **********************************************************/
 
-BOOLEAN STDCALL
+BOOLEAN NTAPI
 IntVideoPortInterruptRoutine(
    IN struct _KINTERRUPT *Interrupt,
    IN PVOID ServiceContext)
@@ -38,7 +38,7 @@
       &DeviceExtension->MiniPortDeviceExtension);
 }
 
-BOOLEAN STDCALL
+BOOLEAN NTAPI
 IntVideoPortSetupInterrupt(
    IN PDEVICE_OBJECT DeviceObject,
    IN PVIDEO_PORT_DRIVER_EXTENSION DriverExtension,
@@ -105,7 +105,7 @@
  * @implemented
  */
 
-VP_STATUS STDCALL
+VP_STATUS NTAPI
 VideoPortEnableInterrupt(IN PVOID HwDeviceExtension)
 {
    PVIDEO_PORT_DEVICE_EXTENSION DeviceExtension;
@@ -127,7 +127,7 @@
  * @implemented
  */
 
-VP_STATUS STDCALL
+VP_STATUS NTAPI
 VideoPortDisableInterrupt(IN PVOID HwDeviceExtension)
 {
    PVIDEO_PORT_DEVICE_EXTENSION DeviceExtension;

Modified: trunk/reactos/drivers/video/videoprt/resource.c
--- trunk/reactos/drivers/video/videoprt/resource.c	2005-08-24 20:34:50 UTC (rev 17519)
+++ trunk/reactos/drivers/video/videoprt/resource.c	2005-08-24 21:29:24 UTC (rev 17520)
@@ -25,7 +25,7 @@
 
 /* PRIVATE FUNCTIONS **********************************************************/
 
-NTSTATUS STDCALL
+NTSTATUS NTAPI
 IntVideoPortMapPhysicalMemory(
    IN HANDLE Process,
    IN PHYSICAL_ADDRESS PhysicalAddress,
@@ -76,7 +76,7 @@
 }
 
 
-PVOID STDCALL
+PVOID NTAPI
 IntVideoPortMapMemory(
    IN PVIDEO_PORT_DEVICE_EXTENSION DeviceExtension,
    IN PHYSICAL_ADDRESS IoAddress,
@@ -231,7 +231,7 @@
    return NULL;
 }
 
-VOID STDCALL
+VOID NTAPI
 IntVideoPortUnmapMemory(
    IN PVIDEO_PORT_DEVICE_EXTENSION DeviceExtension,
    IN PVOID MappedAddress)
@@ -283,7 +283,7 @@
  * @implemented
  */
 
-PVOID STDCALL
+PVOID NTAPI
 VideoPortGetDeviceBase(
    IN PVOID HwDeviceExtension,
    IN PHYSICAL_ADDRESS IoAddress,
@@ -304,7 +304,7 @@
  * @implemented
  */
 
-VOID STDCALL
+VOID NTAPI
 VideoPortFreeDeviceBase(
    IN PVOID HwDeviceExtension,
    IN PVOID MappedAddress)
@@ -319,7 +319,7 @@
  * @unimplemented
  */
 
-VP_STATUS STDCALL
+VP_STATUS NTAPI
 VideoPortMapBankedMemory(
    IN PVOID HwDeviceExtension,
    IN PHYSICAL_ADDRESS PhysicalAddress,
@@ -341,7 +341,7 @@
  * @implemented
  */
 
-VP_STATUS STDCALL
+VP_STATUS NTAPI
 VideoPortMapMemory(
    IN PVOID HwDeviceExtension,
    IN PHYSICAL_ADDRESS PhysicalAddress,
@@ -371,7 +371,7 @@
  * @implemented
  */
 
-VP_STATUS STDCALL
+VP_STATUS NTAPI
 VideoPortUnmapMemory(
    IN PVOID HwDeviceExtension,
    IN PVOID VirtualAddress,
@@ -390,7 +390,7 @@
  * @implemented
  */
 
-VP_STATUS STDCALL
+VP_STATUS NTAPI
 VideoPortGetAccessRanges(
    IN PVOID HwDeviceExtension,
    IN ULONG NumRequestedResources,
@@ -579,7 +579,7 @@
  * @implemented
  */
 
-VP_STATUS STDCALL
+VP_STATUS NTAPI
 VideoPortVerifyAccessRanges(
    IN PVOID HwDeviceExtension,
    IN ULONG NumAccessRanges,
@@ -659,7 +659,7 @@
  * @unimplemented
  */
 
-VP_STATUS STDCALL
+VP_STATUS NTAPI
 VideoPortGetDeviceData(
    IN PVOID HwDeviceExtension,
    IN VIDEO_DEVICE_DATA_TYPE DeviceDataType,
@@ -675,7 +675,7 @@
  * @implemented
  */
 
-PVOID STDCALL
+PVOID NTAPI
 VideoPortAllocatePool(
    IN PVOID HwDeviceExtension,
    IN VP_POOL_TYPE PoolType,
@@ -690,7 +690,7 @@
  * @implemented
  */
 
-VOID STDCALL
+VOID NTAPI
 VideoPortFreePool(
    IN PVOID HwDeviceExtension,
    IN PVOID Ptr)
@@ -702,7 +702,7 @@
  * @implemented
  */
 
-VP_STATUS STDCALL
+VP_STATUS NTAPI
 VideoPortAllocateBuffer(
    IN PVOID HwDeviceExtension,
    IN ULONG Size,
@@ -717,7 +717,7 @@
  * @implemented
  */
 
-VOID STDCALL
+VOID NTAPI
 VideoPortReleaseBuffer(
    IN PVOID HwDeviceExtension,
    IN PVOID Ptr)
@@ -730,7 +730,7 @@
  * @unimplemented
  */
 
-PVOID STDCALL
+PVOID NTAPI
 VideoPortLockBuffer(
    IN PVOID HwDeviceExtension,
    IN PVOID BaseAddress,
@@ -745,7 +745,7 @@
  * @unimplemented
  */
 
-VOID STDCALL
+VOID NTAPI
 VideoPortUnlockBuffer(
    IN PVOID HwDeviceExtension,
    IN PVOID Mdl)
@@ -757,7 +757,7 @@
  * @unimplemented
  */
 
-VP_STATUS STDCALL
+VP_STATUS NTAPI
 VideoPortSetTrappedEmulatorPorts(
    IN PVOID HwDeviceExtension,
    IN ULONG NumAccessRanges,
@@ -772,7 +772,7 @@
  * @implemented
  */
 
-ULONG STDCALL
+ULONG NTAPI
 VideoPortGetBusData(
    IN PVOID HwDeviceExtension,
    IN BUS_DATA_TYPE BusDataType,
@@ -807,7 +807,7 @@
  * @implemented
  */
 
-ULONG STDCALL
+ULONG NTAPI
 VideoPortSetBusData(
    IN PVOID HwDeviceExtension,
    IN BUS_DATA_TYPE BusDataType,

Modified: trunk/reactos/drivers/video/videoprt/services.c
--- trunk/reactos/drivers/video/videoprt/services.c	2005-08-24 20:34:50 UTC (rev 17519)
+++ trunk/reactos/drivers/video/videoprt/services.c	2005-08-24 21:29:24 UTC (rev 17520)
@@ -23,19 +23,19 @@
 
 #include "videoprt.h"
 
-VOID STDCALL
+VOID NTAPI
 IntInterfaceReference(PVOID Context)
 {
    /* Do nothing */
 }
 
-VOID STDCALL
+VOID NTAPI
 IntInterfaceDereference(PVOID Context)
 {
    /* Do nothing */
 }
 
-VP_STATUS STDCALL
+VP_STATUS NTAPI
 VideoPortQueryServices(
   IN PVOID HwDeviceExtension,
   IN VIDEO_PORT_SERVICES ServicesType,
@@ -89,7 +89,7 @@
    return ERROR_INVALID_FUNCTION;
 }
 
-BOOLEAN STDCALL
+BOOLEAN NTAPI
 VideoPortGetAgpServices(
    IN PVOID HwDeviceExtension,
    OUT PVIDEO_PORT_AGP_SERVICES AgpServices)

Modified: trunk/reactos/drivers/video/videoprt/spinlock.c
--- trunk/reactos/drivers/video/videoprt/spinlock.c	2005-08-24 20:34:50 UTC (rev 17519)
+++ trunk/reactos/drivers/video/videoprt/spinlock.c	2005-08-24 21:29:24 UTC (rev 17520)
@@ -27,7 +27,7 @@
  * @implemented
  */
 
-VP_STATUS STDCALL
+VP_STATUS NTAPI
 VideoPortCreateSpinLock(
    IN PVOID HwDeviceExtension,
    OUT PSPIN_LOCK *SpinLock)
@@ -44,7 +44,7 @@
  * @implemented
  */
 
-VP_STATUS STDCALL
+VP_STATUS NTAPI
 VideoPortDeleteSpinLock(
    IN PVOID HwDeviceExtension,
    IN PSPIN_LOCK SpinLock)
@@ -58,7 +58,7 @@
  * @implemented
  */
 
-VOID STDCALL
+VOID NTAPI
 VideoPortAcquireSpinLock(
    IN PVOID HwDeviceExtension,
    IN PSPIN_LOCK SpinLock,
@@ -72,7 +72,7 @@
  * @implemented
  */
 
-VOID STDCALL
+VOID NTAPI
 VideoPortAcquireSpinLockAtDpcLevel(
    IN PVOID HwDeviceExtension,
    IN PSPIN_LOCK SpinLock)
@@ -85,7 +85,7 @@
  * @implemented
  */
 
-VOID STDCALL
+VOID NTAPI
 VideoPortReleaseSpinLock(
    IN PVOID HwDeviceExtension,
    IN PSPIN_LOCK SpinLock,
@@ -99,7 +99,7 @@
  * @implemented
  */
 
-VOID STDCALL
+VOID NTAPI
 VideoPortReleaseSpinLockFromDpcLevel(
    IN PVOID HwDeviceExtension,
    IN PSPIN_LOCK SpinLock)

Modified: trunk/reactos/drivers/video/videoprt/timer.c
--- trunk/reactos/drivers/video/videoprt/timer.c	2005-08-24 20:34:50 UTC (rev 17519)
+++ trunk/reactos/drivers/video/videoprt/timer.c	2005-08-24 21:29:24 UTC (rev 17520)
@@ -25,7 +25,7 @@
 
 /* PRIVATE FUNCTIONS **********************************************************/
 
-VOID STDCALL
+VOID NTAPI
 IntVideoPortTimerRoutine(
    IN PDEVICE_OBJECT DeviceObject,
    IN PVOID ServiceContext)
@@ -38,7 +38,7 @@
       &DeviceExtension->MiniPortDeviceExtension);
 }
 
-BOOLEAN STDCALL
+BOOLEAN NTAPI
 IntVideoPortSetupTimer(
    IN PDEVICE_OBJECT DeviceObject,
    IN PVIDEO_PORT_DRIVER_EXTENSION DriverExtension)
@@ -73,7 +73,7 @@
  * @implemented
  */
 
-VOID STDCALL
+VOID NTAPI
 VideoPortStartTimer(IN PVOID HwDeviceExtension)
 {
    DPRINT("VideoPortStartTimer\n");
@@ -84,7 +84,7 @@
  * @implemented
  */
 
-VOID STDCALL
+VOID NTAPI
 VideoPortStopTimer(IN PVOID HwDeviceExtension)
 {
    DPRINT("VideoPortStopTimer\n");

Modified: trunk/reactos/drivers/video/videoprt/videoprt.c
--- trunk/reactos/drivers/video/videoprt/videoprt.c	2005-08-24 20:34:50 UTC (rev 17519)
+++ trunk/reactos/drivers/video/videoprt/videoprt.c	2005-08-24 21:29:24 UTC (rev 17520)
@@ -30,7 +30,7 @@
 
 /* PRIVATE FUNCTIONS **********************************************************/
 
-NTSTATUS STDCALL
+NTSTATUS NTAPI
 DriverEntry(
    IN PDRIVER_OBJECT DriverObject,
    IN PUNICODE_STRING RegistryPath)
@@ -38,7 +38,7 @@
    return STATUS_SUCCESS;
 }
 
-PVOID STDCALL
+PVOID NTAPI
 IntVideoPortImageDirectoryEntryToData(
    PVOID BaseAddress,
    ULONG Directory)
@@ -60,7 +60,7 @@
    return (PVOID)((ULONG_PTR)BaseAddress + Va);
 }
 
-PVOID STDCALL
+PVOID NTAPI
 IntVideoPortGetProcAddress(
    IN PVOID HwDeviceExtension,
    IN PUCHAR FunctionName)
@@ -116,7 +116,7 @@
    return NULL;
 }
 
-VOID STDCALL
+VOID NTAPI
 IntVideoPortDeferredRoutine(
    IN PKDPC Dpc,
    IN PVOID DeferredContext,
@@ -128,7 +128,7 @@
    ((PMINIPORT_DPC_ROUTINE)SystemArgument1)(HwDeviceExtension, SystemArgument2);
 }
 
-ULONG STDCALL
+ULONG NTAPI
 IntVideoPortAllocateDeviceNumber(VOID)
 {
    NTSTATUS Status;
@@ -163,7 +163,7 @@
    return DeviceNumber;
 }
 
-NTSTATUS STDCALL
+NTSTATUS NTAPI
 IntVideoPortCreateAdapterDeviceObject(
    IN PDRIVER_OBJECT DriverObject,
    IN PVIDEO_PORT_DRIVER_EXTENSION DriverExtension,
@@ -308,7 +308,7 @@
 
 
 /* FIXME: we have to detach the device object in IntVideoPortFindAdapter if it fails */
-NTSTATUS STDCALL
+NTSTATUS NTAPI
 IntVideoPortFindAdapter(
    IN PDRIVER_OBJECT DriverObject,
    IN PVIDEO_PORT_DRIVER_EXTENSION DriverExtension,
@@ -518,7 +518,7 @@
  * @implemented
  */
 
-ULONG STDCALL
+ULONG NTAPI
 VideoPortInitialize(
    IN PVOID Context1,
    IN PVOID Context2,
@@ -534,10 +534,26 @@
    DPRINT("VideoPortInitialize\n");
 
    /*
+    * As a first thing do parameter checks.
+    */
+
+   if (HwInitializationData->HwInitDataSize > sizeof(VIDEO_HW_INITIALIZATION_DATA))
+   {
+      return STATUS_REVISON_MISMATCH;
+   }
+
+   if (HwInitializationData->HwFindAdapter == NULL ||
+       HwInitializationData->HwInitialize == NULL ||
+       HwInitializationData->HwStartIO == NULL)
+   {
+      return STATUS_INVALID_PARAMETER;
+   }
+
+   /*
     * NOTE:
     * The driver extension can be already allocated in case that we were
     * called by legacy driver and failed detecting device. Some miniport
-    * drivers in that case adjust parameters and calls VideoPortInitialize
+    * drivers in that case adjust parameters and call VideoPortInitialize
     * again.
     */
 
@@ -554,6 +570,34 @@
       {
          return Status;
       }
+
+      /*
+       * Save the registry path. This should be done only once even if
+       * VideoPortInitialize is called multiple times.
+       */
+
+      if (RegistryPath->Length != 0)
+      {
+         DriverExtension->RegistryPath.Length = 0;
+         DriverExtension->RegistryPath.MaximumLength =
+            RegistryPath->Length + sizeof(UNICODE_NULL);
+         DriverExtension->RegistryPath.Buffer =
+            ExAllocatePoolWithTag(
+               PagedPool,
+               DriverExtension->RegistryPath.MaximumLength,
+               TAG('U', 'S', 'T', 'R'));
+         if (DriverExtension->RegistryPath.Buffer == NULL)
+         {
+            RtlInitUnicodeString(&DriverExtension->RegistryPath, NULL);
+            return STATUS_INSUFFICIENT_RESOURCES;
+         }
+
+         RtlCopyUnicodeString(&DriverExtension->RegistryPath, RegistryPath);
+      }
+      else
+      {
+         RtlInitUnicodeString(&DriverExtension->RegistryPath, NULL);
+      }
    }
 
    /*
@@ -563,9 +607,9 @@
    RtlCopyMemory(
       &DriverExtension->InitializationData,
       HwInitializationData,
-      min(sizeof(VIDEO_HW_INITIALIZATION_DATA),
-          HwInitializationData->HwInitDataSize));
-   if (sizeof(VIDEO_HW_INITIALIZATION_DATA) > HwInitializationData->HwInitDataSize)
+      HwInitializationData->HwInitDataSize);
+   if (HwInitializationData->HwInitDataSize <
+       sizeof(VIDEO_HW_INITIALIZATION_DATA))
    {
       RtlZeroMemory((PVOID)((ULONG_PTR)&DriverExtension->InitializationData +
                                        HwInitializationData->HwInitDataSize),
@@ -574,27 +618,6 @@
    }
    DriverExtension->HwContext = HwContext;
 
-   /* we can't use RtlDuplicateUnicodeString because only ntdll exposes it... */
-   if (RegistryPath->Length != 0)
-   {
-      DriverExtension->RegistryPath.Length = 0;
-      DriverExtension->RegistryPath.MaximumLength = RegistryPath->Length + sizeof(UNICODE_NULL);
-      DriverExtension->RegistryPath.Buffer = ExAllocatePoolWithTag(PagedPool,
-                                                                   DriverExtension->RegistryPath.MaximumLength,
-                                                                   TAG('U', 'S', 'T', 'R'));
-      if (DriverExtension->RegistryPath.Buffer == NULL)
-      {
-         RtlInitUnicodeString(&DriverExtension->RegistryPath, NULL);
-         return STATUS_INSUFFICIENT_RESOURCES;
-      }
-
-      RtlCopyUnicodeString(&DriverExtension->RegistryPath, RegistryPath);
-   }
-   else
-   {
-      RtlInitUnicodeString(&DriverExtension->RegistryPath, NULL);
-   }
-
    switch (HwInitializationData->HwInitDataSize)
    {
       /*
@@ -675,7 +698,7 @@
  * @unimplemented
  */
 
-VOID STDCALL
+VOID NTAPI
 VideoPortLogError(
    IN PVOID HwDeviceExtension,
    IN PVIDEO_REQUEST_PACKET Vrp OPTIONAL,
@@ -694,7 +717,7 @@
  * @implemented
  */
 
-UCHAR STDCALL
+UCHAR NTAPI
 VideoPortGetCurrentIrql(VOID)
 {
    return KeGetCurrentIrql();
@@ -707,7 +730,7 @@
    PMINIPORT_GET_REGISTRY_ROUTINE HwGetRegistryRoutine;
 } QUERY_REGISTRY_CALLBACK_CONTEXT, *PQUERY_REGISTRY_CALLBACK_CONTEXT;
 
-static NTSTATUS STDCALL
+static NTSTATUS NTAPI
 QueryRegistryCallback(
    IN PWSTR ValueName,
    IN ULONG ValueType,
@@ -732,7 +755,7 @@
  * @unimplemented
  */
 
-VP_STATUS STDCALL
+VP_STATUS NTAPI
 VideoPortGetRegistryParameters(
    IN PVOID HwDeviceExtension,
    IN PWSTR ParameterName,
@@ -780,7 +803,7 @@
  * @implemented
  */
 
-VP_STATUS STDCALL
+VP_STATUS NTAPI
 VideoPortSetRegistryParameters(
    IN PVOID HwDeviceExtension,
    IN PWSTR ValueName,
@@ -802,7 +825,7 @@
  * @implemented
  */
 
-VP_STATUS STDCALL
+VP_STATUS NTAPI
 VideoPortGetVgaStatus(
    IN PVOID HwDeviceExtension,
    OUT PULONG VgaStatus)
@@ -830,7 +853,7 @@
  * @implemented
  */
 
-PVOID STDCALL
+PVOID NTAPI
 VideoPortGetRomImage(
    IN PVOID HwDeviceExtension,
    IN PVOID Unused1,
@@ -888,7 +911,7 @@
  * @implemented
  */
 
-BOOLEAN STDCALL
+BOOLEAN NTAPI
 VideoPortScanRom(
    IN PVOID HwDeviceExtension,
    IN PUCHAR RomBase,
@@ -922,7 +945,7 @@
  * @implemented
  */
 
-BOOLEAN STDCALL
+BOOLEAN NTAPI
 VideoPortSynchronizeExecution(
    IN PVOID HwDeviceExtension,
    IN VIDEO_SYNCHRONIZE_PRIORITY Priority,
@@ -972,7 +995,7 @@
  * @implemented
  */
 
[truncated at 1000 lines; 261 more skipped]