| 169 | static const int max_name_len = 1024; |
| 170 | public: |
| 171 | symbol(HANDLE process, DWORD64 address) : sym((sym_type *)::operator new(sizeof(*sym) + max_name_len)) { |
| 172 | memset(sym, '\0', sizeof(*sym) + max_name_len); |
| 173 | sym->SizeOfStruct = sizeof(*sym); |
| 174 | sym->MaxNameLength = max_name_len; |
| 175 | DWORD64 displacement; |
| 176 | |
| 177 | if (!SymGetSymFromAddr64(process, address, &displacement, sym)) |
| 178 | { |
| 179 | delete sym; |
| 180 | } |
| 181 | } |
| 182 | |
| 183 | std::string name() { return sym ? std::string(sym->Name) : "???"; } |
| 184 | std::string undecorated_name() { |
nothing calls this directly
no outgoing calls
no test coverage detected