From f9fead82adc852f8b637318daefa266f6e2357bb Mon Sep 17 00:00:00 2001 From: Johannes Anderwald Date: Sat, 12 Feb 2011 19:08:22 +0000 Subject: [PATCH] [MMIXER] - Allocate memory for the logical pin array - Use the correct counter variable for logical pin array - Found by msvc svn path=/branches/cmake-bringup/; revision=50674 --- lib/drivers/sound/mmixer/sup.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/lib/drivers/sound/mmixer/sup.c b/lib/drivers/sound/mmixer/sup.c index 9052e94fb9c..6d83e2cc4cf 100644 --- a/lib/drivers/sound/mmixer/sup.c +++ b/lib/drivers/sound/mmixer/sup.c @@ -544,6 +544,14 @@ MMixerSetGetMuxControlDetails( ASSERT(MixerData->Topology); ASSERT(MixerData->MixerInfo == MixerInfo); + /* now allocate logical pin array */ + Status = MMixerAllocateTopologyNodeArray(MixerContext, MixerData->Topology, &LogicalNodes); + if (Status != MM_STATUS_SUCCESS) + { + /* no memory */ + return MM_STATUS_NO_MEMORY; + } + /* get logical pin nodes */ MMixerGetConnectedFromLogicalTopologyPins(MixerData->Topology, MixerControl->NodeID, &LogicalNodesCount, LogicalNodes); @@ -552,7 +560,7 @@ MMixerSetGetMuxControlDetails( ASSERT(LogicalNodesCount == MixerControl->Control.Metrics.dwReserved[0]); Values = (LPMIXERCONTROLDETAILS_BOOLEAN)MixerControlDetails->paDetails; - for(Index = 0; Index < ConnectedNodesCount; Index++) + for(Index = 0; Index < LogicalNodesCount; Index++) { /* getting logical pin offset */ MMixerGetLowestLogicalTopologyPinOffsetFromArray(LogicalNodesCount, LogicalNodes, &CurLogicalPinOffset);