changeset 29325:e84b97e37f75

maint: merge stable to default.
author John W. Eaton <jwe@octave.org>
date Mon, 25 Jan 2021 15:17:45 -0500
parents 71ed922db66d (current diff) 1a20cb5be8da (diff)
children e6162e1c217e
files libinterp/corefcn/stack-frame.cc test/module.mk
diffstat 5 files changed, 16 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/libinterp/corefcn/stack-frame.cc	Mon Jan 25 13:11:00 2021 -0500
+++ b/libinterp/corefcn/stack-frame.cc	Mon Jan 25 15:17:45 2021 -0500
@@ -1993,6 +1993,9 @@
   {
     size_t data_offset = sym.data_offset ();
 
+    if (data_offset >= size ())
+      resize_and_update_script_offsets (sym);
+
     // Redirection to evaluation context for the script.
 
     size_t frame_offset = m_lexical_frame_offsets.at (data_offset);
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/bug-59937/bug-59937.tst	Mon Jan 25 15:17:45 2021 -0500
@@ -0,0 +1,5 @@
+%!test
+%! eval_global_script
+%! assert (isglobal (new_var_name));
+%! assert (__varval__ (new_var_name), []);
+%! eval (sprintf ("clear -global %s", new_var_name));
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/bug-59937/eval_global_script.m	Mon Jan 25 15:17:45 2021 -0500
@@ -0,0 +1,2 @@
+new_var_name = matlab.lang.makeUniqueStrings ('somevar', who ());
+eval (sprintf ("global %s", new_var_name))
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/bug-59937/module.mk	Mon Jan 25 15:17:45 2021 -0500
@@ -0,0 +1,5 @@
+bug_59937_TEST_FILES = \
+  %reldir%/bug-59937.tst \
+  %reldir%/eval_global_script.m
+
+TEST_FILES += $(bug_59937_TEST_FILES)
--- a/test/module.mk	Mon Jan 25 13:11:00 2021 -0500
+++ b/test/module.mk	Mon Jan 25 15:17:45 2021 -0500
@@ -90,6 +90,7 @@
 include %reldir%/bug-59617/module.mk
 include %reldir%/bug-59661/module.mk
 include %reldir%/bug-59704/module.mk
+include %reldir%/bug-59937/module.mk
 include %reldir%/class-concat/module.mk
 include %reldir%/classdef/module.mk
 include %reldir%/classdef-multiple-inheritance/module.mk