| 178 | } |
| 179 | |
| 180 | Plugin::~Plugin() |
| 181 | { |
| 182 | if (this->m_loaded) { |
| 183 | fprintf( |
| 184 | stderr, |
| 185 | "Critical: cannot destroy plugin `%s': plugin is loaded\n", |
| 186 | this->m_name.c_str()); |
| 187 | abort(); |
| 188 | } |
| 189 | |
| 190 | if (this->m_handle != nullptr) |
| 191 | dlclose(this->m_handle); |
| 192 | } |
| 193 | |
| 194 | void * |
| 195 | Plugin::resolveSym(std::string const &sym) |