I just looked over this, and it looks good. Just a couple of things:
- In a couple of places, you attempt to call CloseHandle on a convar Handle. You can't close those.
- You're calling Updater_RemovePlugin() when the "updater" library is removed. This will most likely cause an error, since if Updater is unloaded (which is the only time when the library should be removed), its natives will become invalid. If Updater is unloaded, this plugin is obviously no longer being monitored for updates (since Updater doesn't exist anymore).
- You're closing some global Handles on OnPluginEnd. This is unneccessary. If a plugin unloads, all of its memory is automatically freed.
__________________