void MCUndolist::freeobject(MCObject *objptr) { if (nodes != NULL) { MCUndonode *uptr = nodes; do { if (uptr->getobject() == objptr) { uptr->remove (nodes); delete uptr; return; } uptr = uptr->next(); } while (uptr != nodes); } }