| 597 | } |
| 598 | |
| 599 | virtual void disposeAll() |
| 600 | { |
| 601 | if (Verbose) { |
| 602 | fprintf(stderr, "close %p\n", p); |
| 603 | } |
| 604 | |
| 605 | if (not mainExecutable) |
| 606 | dlclose(p); |
| 607 | |
| 608 | if (next_) { |
| 609 | next_->disposeAll(); |
| 610 | } |
| 611 | |
| 612 | if (name_) { |
| 613 | ::free(const_cast<char*>(name_)); |
| 614 | } |
| 615 | |
| 616 | ::free(this); |
| 617 | } |
| 618 | |
| 619 | System* s; |
| 620 | void* p; |