summaryrefslogtreecommitdiff
path: root/src/map/script-call.cpp
diff options
context:
space:
mode:
authorgumi <git@gumi.ca>2018-01-01 16:09:22 -0500
committergumi <git@gumi.ca>2018-01-01 18:09:15 -0500
commitb7ec6e535d314a64aeaf426e2e4c068cd7c4bb34 (patch)
treef29e84563c80e5438da35e608967c33c195dde98 /src/map/script-call.cpp
parente808b814cd0899342fcba21cc74ec059772ceb5e (diff)
downloadtmwa-b7ec6e535d314a64aeaf426e2e4c068cd7c4bb34.tar.gz
tmwa-b7ec6e535d314a64aeaf426e2e4c068cd7c4bb34.tar.bz2
tmwa-b7ec6e535d314a64aeaf426e2e4c068cd7c4bb34.tar.xz
tmwa-b7ec6e535d314a64aeaf426e2e4c068cd7c4bb34.zip
release v18.1.1v18.1.1
Diffstat (limited to 'src/map/script-call.cpp')
-rw-r--r--src/map/script-call.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/map/script-call.cpp b/src/map/script-call.cpp
index d54e234..7c7d4e6 100644
--- a/src/map/script-call.cpp
+++ b/src/map/script-call.cpp
@@ -383,6 +383,9 @@ void pop_stack(struct script_stack *stack, int start, int end)
static
ByteCode get_com(ScriptPointer *script)
{
+ if (script == nullptr)
+ return ByteCode::NOP;
+
if (static_cast<uint8_t>(script->peek()) >= 0x80)
{
// synthetic! Does not advance pos yet.
@@ -742,10 +745,16 @@ void run_func(ScriptState *st)
static
void run_script_main(ScriptState *st, Borrowed<const ScriptBuffer> rootscript)
{
+ if (st == nullptr)
+ return;
+
int cmdcount = script_config.check_cmdcount;
int gotocount = script_config.check_gotocount;
struct script_stack *stack = st->stack;
+ if (stack == nullptr)
+ return;
+
st->defsp = stack->stack_datav.size();
int rerun_pos = st->scriptp.pos;