[WDMAUD_KERNEL]
authorJohannes Anderwald <johannes.anderwald@reactos.org>
Sat, 30 Oct 2010 15:15:22 +0000 (15:15 +0000)
committerJohannes Anderwald <johannes.anderwald@reactos.org>
Sat, 30 Oct 2010 15:15:22 +0000 (15:15 +0000)
- Unlock locked pages before freeing the mdl
- Fixes assertion hit 'Assertion 'OldRefCount < 2500' failed at ARMĀ³::MDLSUP line 1008'
- Fixes playback / recording of longer audio files

svn path=/trunk/; revision=49355

reactos/drivers/wdm/audio/legacy/wdmaud/control.c

index 3af87b8..d41b5da 100644 (file)
@@ -464,6 +464,13 @@ WdmAudReadWrite(
         return SetIrpIoStatus(Irp, Status, 0);
     }
 
+    /* check if mdl is locked */
+    if (Mdl->MdlFlags & MDL_PAGES_LOCKED)
+    {
+        /* unlock pages */
+        MmUnlockPages(Mdl);
+    }
+
     /* now free the mdl */
     IoFreeMdl(Mdl);