diff --git a/reactos/drivers/wdm/audio/backpln/portcls/filter_wavecyclic.c b/reactos/drivers/wdm/audio/backpln/portcls/filter_wavecyclic.c index b4677cdaeb3..b6934ecdc6b 100644 --- a/reactos/drivers/wdm/audio/backpln/portcls/filter_wavecyclic.c +++ b/reactos/drivers/wdm/audio/backpln/portcls/filter_wavecyclic.c @@ -236,7 +236,7 @@ IPortFilterWaveCyclic_fnClose( IN PIRP Irp) { ULONG Index; - PMINIPORTWAVECYCLIC Miniport; + //PMINIPORTWAVECYCLIC Miniport; IPortFilterWaveCyclicImpl * This = (IPortFilterWaveCyclicImpl *)iface; for(Index = 0; Index < This->Descriptor->Factory.PinDescriptorCount; Index++) @@ -246,12 +246,12 @@ IPortFilterWaveCyclic_fnClose( } /* release reference to port */ - This->Port->lpVtbl->Release(This->Port); + //This->Port->lpVtbl->Release(This->Port); /* get the miniport driver */ - Miniport = GetWaveCyclicMiniport(This->Port); + //Miniport = GetWaveCyclicMiniport(This->Port); /* release miniport driver */ - Miniport->lpVtbl->Release(Miniport); + //Miniport->lpVtbl->Release(Miniport); Irp->IoStatus.Status = STATUS_SUCCESS; diff --git a/reactos/drivers/wdm/audio/backpln/portcls/irpstream.c b/reactos/drivers/wdm/audio/backpln/portcls/irpstream.c index 0c3f10619f7..1fecad8d28f 100644 --- a/reactos/drivers/wdm/audio/backpln/portcls/irpstream.c +++ b/reactos/drivers/wdm/audio/backpln/portcls/irpstream.c @@ -393,13 +393,15 @@ IIrpQueue_fnGetMappingWithTag( /* insert into list to free later */ ExInterlockedInsertTailList(&This->FreeHead, &CurMapping->Entry, &This->Lock); + DPRINT("IIrpQueue_fnGetMappingWithTag Tag %p Mapping %p\n", Tag, CurMapping); } else { /* we can free this entry now */ FreeItem(CurMapping, TAG_PORTCLASS); + DPRINT("IIrpQueue_fnGetMappingWithTag Tag %p Mapping %p FREED\n", Tag, CurMapping); } - DPRINT("IIrpQueue_fnGetMappingWithTag Tag %p\n", Tag); + return STATUS_SUCCESS; } diff --git a/reactos/drivers/wdm/audio/backpln/portcls/undoc.c b/reactos/drivers/wdm/audio/backpln/portcls/undoc.c index e5dbb853722..b7c736c78e2 100644 --- a/reactos/drivers/wdm/audio/backpln/portcls/undoc.c +++ b/reactos/drivers/wdm/audio/backpln/portcls/undoc.c @@ -236,8 +236,14 @@ PcCreateSubdeviceDescriptor( for(Index = 0; Index < FilterDescription->NodeCount; Index++) { - RtlMoveMemory((PVOID)&Descriptor->Topology->TopologyNodes[Index], FilterDescription->Nodes[Index].Type, sizeof(GUID)); - RtlMoveMemory((PVOID)&Descriptor->Topology->TopologyNodesNames[Index], FilterDescription->Nodes[Index].Name, sizeof(GUID)); + if (FilterDescription->Nodes[Index].Type) + { + RtlMoveMemory((PVOID)&Descriptor->Topology->TopologyNodes[Index], FilterDescription->Nodes[Index].Type, sizeof(GUID)); + } + if (FilterDescription->Nodes[Index].Name) + { + RtlMoveMemory((PVOID)&Descriptor->Topology->TopologyNodesNames[Index], FilterDescription->Nodes[Index].Name, sizeof(GUID)); + } } Descriptor->Topology->TopologyNodesCount = FilterDescription->NodeCount; }