Alsalam alikom wa ra7mat Allah wa barakatoh Huh!! that's what I said when I first saw that title... but let me explain... Double Free means that you try to free a pointer two times (which is logically can't work). Actually windows SP2 and later (even Vista) this can be done (in somehow) and can actually corrupt the heap (Vista will shout at your face if u did) and that can make you able to use and browse the heap as you want.. Facts to know about how Windows frees your pointers: - There is something called Lookaside buffer (fast access, small size) and another thing is FreeList(slower access, the whole memory). - Chunk is an object of the DataStructure that holds mainly 2 things: pointer to where the next free Chunk is and pointer to the previous free one (think about it like a node in a linked list) - The first 4 bytes of the Chunk is the BLink (BackLink) and the second 4 bytes is the FLink - delete ptr1; delete ptr2; Windows takes your Chunk (for ptr1) and puts it in the Lo
Just trying to speak freely somewhere online... The opinions in this blog is the author's own opinions. You are free to agree or disagree with them...