Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

20406 Invalid read of size 8 20406 at 0x401814 Ordered list clear in /home/kdrun

ID: 3787256 • Letter: 2

Question

20406 Invalid read of size 8 20406 at 0x401814 Ordered list clear in /home/kdrunz/krd48/Projects/ordered/build/ordered) 20406 by 0x4013 7D main in /hone/kdrunz/krd48/Projects/ordered/build/ordered) 20406 Address 0x5ab6118 is 8 bytes inside a block of size 16 free 'd 20406 at 0x4C2F24B: operator delete (void*) in /usr/lib/valgrind/vgpreload mem check- amd64-linux. so 20406 by 0x40180C: Ordered list clear in /home/kdrunz/krd48/ Projects/ordered/build/ordered) 20406 by 0x40137D: main in /home/kdrunz/krd48/Projects/ordered/build/ordered) Block was alloc d at 20406 20406 at ox4c2E0EF operator new (unsigned long) in /usr/lib/valgrind/vgpreload mem check- amd64-linux. so 20406 by 0x4015E7: Ordered list insert (int) in /home/kdrunz/krd48/Projects/ordered/build/ordered) 20406 by 0x40 10A: main in /home/kdrumz/krd48/Projects/ordered/build/ordered) 20406

Explanation / Answer

Can you correct the clear method

void Ordered_list::clear(){

//delete all node
while(list!=NULL){

node * temp = list;
   list = list->next;    // Move list pointer forward and then delete temp
   delete temp;

}

}


Let me know if there is any concern.

You are not freeing the memory in clear method.

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote