summaryrefslogtreecommitdiff
path: root/basic
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2020-07-10 11:37:50 +0100
committerCaolán McNamara <caolanm@redhat.com>2020-07-10 14:59:43 +0200
commitb55f56ca0417105f1e10131503d5560fb6c7e452 (patch)
tree86777f84f9c68e8fe9ad130a0512b3700caf460b /basic
parentb216fc5b583050cfb1cdf9bd82ec3c1bd2e09d70 (diff)
tdf#134576 at least don't crash in this edge-case
Change-Id: I69638fd2130c1ba68915906ced62bda2cd883932 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98491 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'basic')
-rw-r--r--basic/source/runtime/runtime.cxx8
1 files changed, 6 insertions, 2 deletions
diff --git a/basic/source/runtime/runtime.cxx b/basic/source/runtime/runtime.cxx
index 607604f8abd6..9424482da487 100644
--- a/basic/source/runtime/runtime.cxx
+++ b/basic/source/runtime/runtime.cxx
@@ -2597,10 +2597,14 @@ void SbiRuntime::StepNEXT()
StarBASIC::FatalError( ERRCODE_BASIC_INTERNAL_ERROR );
return;
}
- if( pForStk->eForType == ForType::To )
+ if (pForStk->eForType != ForType::To)
+ return;
+ if (!pForStk->refVar)
{
- pForStk->refVar->Compute( SbxPLUS, *pForStk->refInc );
+ StarBASIC::FatalError( ERRCODE_BASIC_INTERNAL_ERROR );
+ return;
}
+ pForStk->refVar->Compute( SbxPLUS, *pForStk->refInc );
}
// beginning CASE: TOS in CASE-stack