Fixed potential security hole

ryzom/ui/improvements
Nuno 4 years ago
parent df69a1706f
commit 2aaa928cdc

@ -6378,15 +6378,15 @@ namespace NLGUI
} }
else if (_ObjectType=="application/ryzom-tutorial") else if (_ObjectType=="application/ryzom-tutorial")
{ {
strFindReplace(_ObjectScript, "[", ""); while(strFindReplace(_ObjectScript, "[", ""));
strFindReplace(_ObjectScript, "]", ""); while(strFindReplace(_ObjectScript, "]", ""));
CLuaManager::getInstance().executeLuaScript("\ngame:executeTutorial([["+_ObjectScript+"]])\n", true); CLuaManager::getInstance().executeLuaScript("\ngame:executeTutorial([["+_ObjectScript+"]])\n", true);
_ObjectScript.clear(); _ObjectScript.clear();
} }
else if (_ObjectType=="application/ryzom-script") else if (_ObjectType=="application/ryzom-script")
{ {
strFindReplace(_ObjectScript, "[", ""); while(strFindReplace(_ObjectScript, "[", ""));
strFindReplace(_ObjectScript, "]", ""); while(strFindReplace(_ObjectScript, "]", ""));
CLuaManager::getInstance().executeLuaScript("\ngame:executeRyzomScript([["+_ObjectScript+"]])\n", true); CLuaManager::getInstance().executeLuaScript("\ngame:executeRyzomScript([["+_ObjectScript+"]])\n", true);
_ObjectScript.clear(); _ObjectScript.clear();
} }

@ -191,8 +191,8 @@ public:
void execute(CCtrlBase *pCaller, const std::string &sParams) void execute(CCtrlBase *pCaller, const std::string &sParams)
{ {
string script = sParams; string script = sParams;
strFindReplace(script, "[", ""); while(strFindReplace(script, "[", ""));
strFindReplace(script, "]", ""); while(strFindReplace(script, "]", ""));
strFindReplace(script, "|", "\n"); strFindReplace(script, "|", "\n");
CLuaManager::getInstance().executeLuaScript("\ngame:executeRyzomScript([["+script+"]])\n", true); CLuaManager::getInstance().executeLuaScript("\ngame:executeRyzomScript([["+script+"]])\n", true);
} }

Loading…
Cancel
Save