FIX: An application that uses the WASAPI may crash when you call the GetBuffer function

Article translations Article translations
Article ID: 957569 - View products that this article applies to.
Expand all | Collapse all

On This Page

SYMPTOMS

Consider the following scenario:
  • You write an application that uses the Windows Audio Session API (WASAPI) to manage the audio output of an application to an audio endpoint device.
  • The audio endpoint is opened in exclusive mode by using the IAudioClient::Initialize method together with the AUDCLNT_SHAREMODE_EXCLUSIVE SHAREMODE flag
  • You render or capture samples from this audio endpoint by using the IAudioCaptureClient interface and by calling the GetBuffer function.
In this scenario, the client application may crash when you call the GetBuffer function.

CAUSE

Because of an error in the implementation, the WASAPI may return an invalid pointer. This invalid pointer may cause the application to crash.

RESOLUTION

Hotfix information

A supported hotfix is now available from Microsoft. However, it is intended to correct only the problem that this article describes. Apply it only to systems that are experiencing this specific problem.

To resolve this problem, obtain the hotfix from the Microsoft Download Center.

Download Information

Windows Vista, 64-bit version (all languages)
The following files are available for download from the Microsoft Download Center:

Collapse this imageExpand this image
Download
Download the Windows6.0-KB957569-x64.msu package now.
Windows Vista, 32-bit version (all languages)
The following files are available for download from the Microsoft Download Center:

Collapse this imageExpand this image
Download
Download the Windows6.0-KB957569-x86.msu package now.

For more information about how to download Microsoft support files, click the following article number to view the article in the Microsoft Knowledge Base:
119591 How to obtain Microsoft support files from online services
Microsoft scanned this file for viruses. Microsoft used the most current virus-detection software that was available on the date that the file was posted. The file is stored on security-enhanced servers that help prevent any unauthorized changes to the file.

Prerequisites

You must have Windows Vista Service Pack 1 installed to apply this hotfix.

Restart requirement

You may have to restart the computer after you apply this hotfix.

Hotfix replacement information

This hotfix does not replace a previously released hotfix.

Hotfix file information

The global version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time item in Control Panel.
Windows Vista, 32-bit version
Collapse this tableExpand this table
File nameFile versionFile sizeDateTimePlatform
Audiocore.mofNot Applicable4,35218-Dec-200720:59Not Applicable
Audiodg.exe6.0.6001.2225988,06406-Sep-200803:23x86
Audioeng.dll6.0.6001.22259397,31206-Sep-200803:24x86
Audiokse.dll6.0.6001.22259274,94406-Sep-200803:24x86
Audioses.dll6.0.6001.22259116,22406-Sep-200803:24x86
Audiosrv.dll6.0.6001.22259314,36806-Sep-200803:24x86
Encdump.dll5.0.1.1169,98406-Sep-200803:24x86
Windows Vista, 64-bit version
Collapse this tableExpand this table
File nameFile versionFile sizeDateTimePlatform
Audiocore.mofNot Applicable4,35218-Dec-200720:59Not Applicable
Audiodg.exe6.0.6001.22259111,10406-Sep-200804:42x64
Audioeng.dll6.0.6001.22259475,13606-Sep-200804:43x64
Audiokse.dll6.0.6001.22259313,85606-Sep-200804:44x64
Audioses.dll6.0.6001.22259190,97606-Sep-200804:43x64
Audiosrv.dll6.0.6001.22259444,92806-Sep-200804:43x64
Encdump.dll5.0.1.1201,72806-Sep-200804:44x64
Audiocore.mofNot Applicable4,35218-Dec-200720:59Not Applicable
Audiodg.exe6.0.6001.2225988,06406-Sep-200803:23x86
Audioeng.dll6.0.6001.22259397,31206-Sep-200803:24x86
Audiokse.dll6.0.6001.22259274,94406-Sep-200803:24x86
Audioses.dll6.0.6001.22259116,22406-Sep-200803:24x86

STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

MORE INFORMATION

This hotfix prevents the GetBuffer function from returning an invalid buffer. Applications that call the IAudioRenderClient::GetBuffer function or the IAudioCaptureClient::GetBuffer function must check the return value of the ppData pointer. If the returned ppData pointer is NULL, the application must skip the audio render or capture operation, and wait for the next time that the application would usually process audio.

For more information about WASAPI, visit the following Microsoft Developer Network (MSDN) Web site:
http://msdn.microsoft.com/en-us/library/ms679162(VS.85).aspx

Properties

Article ID: 957569 - Last Review: January 2, 2009 - Revision: 1.0
APPLIES TO
  • Windows Vista Business
  • Windows Vista Enterprise
  • Windows Vista Home Basic
  • Windows Vista Home Premium
  • Windows Vista Ultimate
Keywords: 
kbsurveynew kbfix KB957569

Give Feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com