FIX: A memory leak occurs when a program that uses RPC calls unmarshals data on a Windows Embedded CE 6.0-based device

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

On This Page

SYMPTOMS

On a Windows Embedded CE 6.0-based device, you run a program that uses remote procedure call (RPC) calls to communicate with a local COM server. When the program unmarshals data between the client and the server stub, a memory leak occurs. This problem occurs when the following conditions are true:
  • The calls use complex arrays as the parameter types.
  • The complex array is allocated near a network buffer.

RESOLUTION

Software update information

A supported software update is now available from Microsoft as Windows Embedded CE 6.0 Platform Builder Monthly Update (May 2010). You can confirm this by scrolling to the "File information" section. The package file name contains the product version, date, Knowledge Base article number, and processor type. The package file name format is as follows:
Product version-yymmdd-kbnnnnnn-processor type
For example: Wincepb50-060503-kb917590-armv4i.msi is the ARMV4i Windows CE 5.0 Platform Builder fix that is documented in KB article 917590 and that is contained in the May 2006 monthly update. To resolve this problem immediately, click the following article number for information about how to obtain Windows CE Platform Builder and core operating system software updates: 
837392 How to locate core operating system fixes for Microsoft Windows CE Platform Builder products

Prerequisites

This update is supported only if all previously issued updates for this product have also been installed.

Restart requirement

After you apply this update, you must perform a clean build of the whole platform. To do this, use one of the following methods:
  • On the Build menu, click Clean, and then click Build Platform.
  • On the Build menu, click Rebuild Platform.
You do not have to restart the computer after you apply this software update.

Update replacement information

This update does not replace any other updates.

File information

The English version of this software update package 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.
Installer files
Collapse this tableExpand this table
File nameFile sizeDateTime
Wincepb60-100524-kb983479-armv4i.msi1,395,71224-May-201022:52
Wincepb60-100524-kb983479-mipsii.msi1,403,39224-May-201022:52
Wincepb60-100524-kb983479-mipsii_fp.msi1,407,48824-May-201022:52
Wincepb60-100524-kb983479-mipsiv.msi1,410,56024-May-201022:52
Wincepb60-100524-kb983479-mipsiv_fp.msi1,415,68024-May-201022:52
Wincepb60-100524-kb983479-sh4.msi1,313,28024-May-201022:52
Wincepb60-100524-kb983479-x86.msi1,304,57624-May-201022:52
Files that are included in this hotfix package

Collapse this tableExpand this table
File nameFile sizeDateTimePath
Windows embedded ce 6.0_update_kb983479.htm7,64624-May-201021:56100524_kb983479
Rpcndr20.lib1,649,89619-May-201015:55Public\Dcom\Oak\Lib\Armv4i\Debug
Rpcndr20.lib1,413,07419-May-201015:55Public\Dcom\Oak\Lib\Armv4i\Retail
Rpcndr20.lib1,876,90019-May-201015:56Public\Dcom\Oak\Lib\Mipsii\Debug
Rpcndr20.lib1,740,21219-May-201015:56Public\Dcom\Oak\Lib\Mipsii\Retail
Rpcndr20.lib1,879,44819-May-201015:57Public\Dcom\Oak\Lib\Mipsii_fp\Debug
Rpcndr20.lib1,742,09819-May-201015:57Public\Dcom\Oak\Lib\Mipsii_fp\Retail
Rpcndr20.lib1,889,53819-May-201015:58Public\Dcom\Oak\Lib\Mipsiv\Debug
Rpcndr20.lib1,748,17219-May-201015:57Public\Dcom\Oak\Lib\Mipsiv\Retail
Rpcndr20.lib1,894,76219-May-201015:59Public\Dcom\Oak\Lib\Mipsiv_fp\Debug
Rpcndr20.lib1,750,31819-May-201015:58Public\Dcom\Oak\Lib\Mipsiv_fp\Retail
Rpcndr20.lib1,389,66819-May-201015:59Public\Dcom\Oak\Lib\Sh4\Debug
Rpcndr20.lib1,295,00619-May-201015:59Public\Dcom\Oak\Lib\Sh4\Retail
Rpcndr20.lib1,547,81019-May-201015:54Public\Dcom\Oak\Lib\X86\Debug
Rpcndr20.lib1,486,65819-May-201015:54Public\Dcom\Oak\Lib\X86\Retail

STATUS

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

WORKAROUND

To work around this problem, implement the IMallocSpy interface in the server process and then add a DWORD offset at the beginning of each memory allocation.

MORE INFORMATION

For more information about software update terminology, click the following article number to view the article in the Microsoft Knowledge Base:
824684 Description of the standard terminology that is used to describe Microsoft software updates

Properties

Article ID: 983479 - Last Review: June 18, 2010 - Revision: 2.0
APPLIES TO
  • Windows Embedded CE 6.0
Keywords: 
kbqfe kbfix kbsurveynew kbexpertiseadvanced KB983479

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