Advertisement Jump to content
Sign in to follow this  

Error message from DirectX debug

This topic is 5067 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I get this error message from my debug sessions now.
Direct3D9: (ERROR) :Memory still allocated!  Alloc count = 4
Direct3D9: (ERROR) :Current Process (pid) = 00000e9c
Direct3D9: (ERROR) :Memory Address: 003254ac lAllocID=1 dwSize=000047f8, ReturnAddr=00da14db (pid=00000e9c)
Direct3D9: (ERROR) :Memory Address: 0032bacc lAllocID=9 dwSize=00001290, ReturnAddr=00d98044 (pid=00000e9c)
Direct3D9: (ERROR) :Memory Address: 00323054 lAllocID=10 dwSize=00000008, ReturnAddr=00d98132 (pid=00000e9c)
Direct3D9: (ERROR) :Memory Address: 0032cd94 lAllocID=11 dwSize=00000600, ReturnAddr=00d9970f (pid=00000e9c)
Direct3D9: (ERROR) :Total Memory Unfreed From Current Process = 24720 bytes
I'm a bit confused because I do a "safe_release" macro on all them , here's both my macros
    #define SAFE_DELETE(p)       { if(p) { delete (p);     (p)=NULL; } }
    #define SAFE_RELEASE(p)      { if(p) { (p)->Release(); (p)=NULL; } }
I don't know how to debug memory address really. And I safe released all my textures (2) my sprite device, my D3D device, my Direct Input, my Keyboard mouse and Joystick device (even though I don't even start the joystick) What more can it be? the only other directX work is....
D3DXMATRIX m_matProjection;
Anything you can do to try to help me out?

Share this post

Link to post
Share on other sites
Somewhere there's an option to break on allocid. You want to break on allocid 1, 9, 10, and 11. This will throw you into the debugger when these resources are created. Knowing which items aren't being freed should help you track down where you're losing track of them. I'll see if I can find where the break on allocid is...

Here. Basically, "To determine what objects are involved, you can use the AllocID shown for each object to locate the code that initially allocated each object. To do this, go to the Direct3D tab of the DirectX control panel and enter the AllocID in the "Break On AllocID" field, and apply the change. Run a debug build of the application from the VC++ IDE, and the debugger will break into the program at the point of allocation with the specified AllocID."

Share this post

Link to post
Share on other sites
got bump this but I sorta gave up caring because I found the allocID1

I apparently haven't released a Background texture, but I actually have released it, the code actually points directly to the release code right before closer? Is there any reason for the macro to fail?

Edit: Oh yeah ignore this. I forgot I fixed the release problem.

Share this post

Link to post
Share on other sites
Sign in to follow this  

  • Advertisement

Important Information

By using, you agree to our community Guidelines, Terms of Use, and Privacy Policy. is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!