if you see anything im doing wrong now, please, let me know.
Just don't call the destructor by hand. Why don't you believe me? Do you know what "undefined" means? It means everything can happen. Don't draw any conclusion just because your program seems to run correctly. You fixed NOTHING, you did the opposite.
Ok. Your resman instance is a member of a class, right?
resman ResourceManager;
Therefore, the destructor is automatically called in the surrounding class's destructor. Manually calling ~resman() leads to a double destruction, and the mentioned UB. Clear?