From 140a96b3a0fa652b66c701ac941cebc17ff24622 Mon Sep 17 00:00:00 2001 From: Niels Martin Hansen Date: Mon, 15 Apr 2019 19:49:30 +0200 Subject: Change: Limit memory allocations for each Squirrel instance This can avoid out-of-memory situations due to single scripts using up the entire address space. Instead, scripts that go above the maximum are killed. The maximum is default 1 GB per script, but can be configured by a setting. --- src/table/settings.ini | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'src/table') diff --git a/src/table/settings.ini b/src/table/settings.ini index 9e3fa0054..800d6f79c 100644 --- a/src/table/settings.ini +++ b/src/table/settings.ini @@ -1555,6 +1555,21 @@ strhelp = STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES_HELPTEXT strval = STR_JUST_COMMA cat = SC_EXPERT +[SDT_VAR] +base = GameSettings +var = script.script_max_memory_megabytes +type = SLE_UINT32 +from = SLV_SCRIPT_MEMLIMIT +guiflags = SGF_NEWGAME_ONLY +def = 1024 +min = 8 +max = 8192 +interval = 8 +str = STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY +strhelp = STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY_HELPTEXT +strval = STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY_VALUE +cat = SC_EXPERT + ## [SDT_VAR] base = GameSettings -- cgit v1.2.3-54-g00ecf