Author: janderwald Date: Sat Jan 17 17:11:11 2009 New Revision: 38859
URL: http://svn.reactos.org/svn/reactos?rev=38859&view=rev Log: - Store DeviceObject before calling IMiniportTopology's init function
Modified: trunk/reactos/drivers/wdm/audio/backpln/portcls/port_topology.c
Modified: trunk/reactos/drivers/wdm/audio/backpln/portcls/port_topology.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/wdm/audio/backpln/p... ============================================================================== --- trunk/reactos/drivers/wdm/audio/backpln/portcls/port_topology.c [iso-8859-1] (original) +++ trunk/reactos/drivers/wdm/audio/backpln/portcls/port_topology.c [iso-8859-1] Sat Jan 17 17:11:11 2009 @@ -10,7 +10,6 @@
PMINIPORTTOPOLOGY pMiniport; PDEVICE_OBJECT pDeviceObject; - PRESOURCELIST pResourceList; PPINCOUNT pPinCount; PPOWERNOTIFY pPowerNotify;
@@ -148,7 +147,8 @@ NTSTATUS Status; IPortTopologyImpl * This = (IPortTopologyImpl*)iface;
- DPRINT1("IPortTopology_fnInit entered\n"); + DPRINT1("IPortTopology_fnInit entered This %p DeviceObject %p Irp %p UnknownMiniport %p UnknownAdapter %p ResourceList %p\n", + This, DeviceObject, Irp, UnknownMiniport, UnknownAdapter, ResourceList);
if (This->bInitialized) { @@ -161,24 +161,20 @@ { DPRINT1("IPortTopology_Init called with invalid IMiniport adapter\n"); return STATUS_INVALID_PARAMETER; - } - - /* increment reference on resource list */ - //HACK - //ResourceList->lpVtbl->AddRef(ResourceList); - - Status = Miniport->lpVtbl->Init(Miniport, UnknownAdapter, ResourceList, iface); - if (!NT_SUCCESS(Status)) - { - DPRINT1("IPortTopology_Init failed with %x\n", Status); - return Status; }
/* Initialize port object */ This->pMiniport = Miniport; This->pDeviceObject = DeviceObject; This->bInitialized = TRUE; - This->pResourceList = ResourceList; + + Status = Miniport->lpVtbl->Init(Miniport, UnknownAdapter, ResourceList, iface); + if (!NT_SUCCESS(Status)) + { + DPRINT1("IPortTopology_Init failed with %x\n", Status); + This->bInitialized = FALSE; + return Status; + }
/* increment reference on miniport adapter */ Miniport->lpVtbl->AddRef(Miniport);