diff --git a/amxmodx/debugger.cpp b/amxmodx/debugger.cpp index ceff2ea9..a2d3a316 100755 --- a/amxmodx/debugger.cpp +++ b/amxmodx/debugger.cpp @@ -562,8 +562,9 @@ void Debugger::DisplayTrace(const char *message) FormatError(buffer, sizeof(buffer)-1); const char *filename = _GetFilename(); + const char *version = _GetVersion(); - AMXXLOG_Error("[AMXX] Displaying debug trace (plugin \"%s\")", filename); + AMXXLOG_Error("[AMXX] Displaying debug trace (plugin \"%s\", version \"%s\")", filename, version); AMXXLOG_Error("[AMXX] %s", buffer); int count = 0; @@ -605,6 +606,23 @@ const char *Debugger::_GetFilename() return m_FileName.c_str(); } +const char *Debugger::_GetVersion() +{ + if (m_Version.size() < 1) + { + const char *version = ""; + CPluginMngr::CPlugin *pl = g_plugins.findPluginFast(m_pAmx); + if (pl) + { + version = pl->getVersion(); + } + + m_Version.assign(version); + } + + return m_Version.c_str(); +} + void Debugger::FmtGenericMsg(AMX *amx, int error, char buffer[], size_t maxLength) { const char *filename = ""; diff --git a/amxmodx/debugger.h b/amxmodx/debugger.h index 4cfeb1bc..1cdef2b1 100755 --- a/amxmodx/debugger.h +++ b/amxmodx/debugger.h @@ -138,6 +138,7 @@ private: cell _CipAsVa(cell cip); const char *_GetFilename(); + const char *_GetVersion(); public: AMX *m_pAmx; AMX_DBG *m_pAmxDbg; @@ -145,7 +146,8 @@ public: int m_Top; cell *m_pOpcodeList; String m_FileName; - + String m_Version; + CVector m_pCalls; };