From: Johannes Anderwald Date: Tue, 29 Jun 2010 21:14:09 +0000 (+0000) Subject: [PORTCLS] X-Git-Tag: backups/Ash_Shell@48412~1^2~353 X-Git-Url: https://git.reactos.org/?p=reactos.git;a=commitdiff_plain;h=e8f968cbaa27afbcd4d078b1e384a29edcd12850 [PORTCLS] - Check if there is a silence buffer available when there is no audio mapping available - ignore failure for allocation requirements svn path=/trunk/; revision=47909 --- diff --git a/reactos/drivers/wdm/audio/backpln/portcls/irpstream.cpp b/reactos/drivers/wdm/audio/backpln/portcls/irpstream.cpp index 50d55fb4901..aa6f392f87d 100644 --- a/reactos/drivers/wdm/audio/backpln/portcls/irpstream.cpp +++ b/reactos/drivers/wdm/audio/backpln/portcls/irpstream.cpp @@ -259,7 +259,7 @@ CIrpQueue::GetMapping( m_CurrentOffset = Offset = 0; } - if (!Irp) + if (!Irp && m_SilenceBuffer && m_MaxFrameSize) { DPRINT("NoIrp\n"); // no irp available, use silence buffer @@ -268,6 +268,13 @@ CIrpQueue::GetMapping( return STATUS_SUCCESS; } + if (!Irp) + { + // no irp buffer available + return STATUS_UNSUCCESSFUL; + } + + // get stream header StreamHeader = (PKSSTREAM_HEADER)Irp->Tail.Overlay.DriverContext[2]; diff --git a/reactos/drivers/wdm/audio/backpln/portcls/pin_wavepci.cpp b/reactos/drivers/wdm/audio/backpln/portcls/pin_wavepci.cpp index 69985c59d42..430ae5e8190 100644 --- a/reactos/drivers/wdm/audio/backpln/portcls/pin_wavepci.cpp +++ b/reactos/drivers/wdm/audio/backpln/portcls/pin_wavepci.cpp @@ -824,7 +824,6 @@ CPortPinWavePci::Init( if (!NT_SUCCESS(Status)) { DPRINT("GetAllocatorFraming failed with %x\n", Status); - return Status; } DPRINT("OptionFlags %x RequirementsFlag %x PoolType %x Frames %lu FrameSize %lu FileAlignment %lu\n",