Dear All,

 A DEBUG Error appears when I call a delete operation in my program, eg

delete video_decoder;

I checked that it had passed all the operations in the destructor however, it can't return to my main program.

In the debug error message, it shows:

DAMAGE: after Normal block (#28) at 0x00A40060.

Do you know the reason and any solution?

Who is Participating?
LucHoltkampConnect With a Mentor Commented:
I think you overwritten a piece of memory after or before the memory you allocated, somewhere you use an uninitialised pointer, or reference a piece of memory bejond the allocated range.
In DEBUG mode, MFC (if its VC) will allocate a small extra piece of memory before and after a block of memory that is allocated with new.
When the memory is deleted, it checks if you've overwritten that piece of memory, and if so, issues an assertion.
Can you post some code?
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.