20406 Invalid read of size 8 20406 at 0x401814 Ordered list

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

Solution

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.

 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

Get Help Now

Submit a Take Down Notice

Tutor
Tutor: Dr Jack
Most rated tutor on our site