changeset 29172:32fdcf67a683 stable

don't propagate prevailing isargout info through mexCallMATLAB (bug #59597) * mex.cc (mexCallMATLAB): Invalidate lvalue_list before calling feval.
author John W. Eaton <jwe@octave.org>
date Fri, 11 Dec 2020 05:06:07 -0500
parents 3d6a6faa9225
children 4363b185d31f 4ca50ceb9576
files libinterp/corefcn/mex.cc
diffstat 1 files changed, 10 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/libinterp/corefcn/mex.cc	Thu Dec 10 23:23:09 2020 +0100
+++ b/libinterp/corefcn/mex.cc	Fri Dec 11 05:06:07 2020 -0500
@@ -3254,6 +3254,16 @@
 
   try
     {
+      octave::tree_evaluator& tw = interp.get_evaluator ();
+
+      octave::unwind_action act
+        ([&tw] (const std::list<octave::octave_lvalue> *lvl)
+         {
+           tw.set_lvalue_list (lvl);
+         }, tw.lvalue_list ());
+
+      tw.set_lvalue_list (nullptr);
+
       retval = octave::feval (fname, args, nargout);
     }
   catch (const octave::execution_exception&)