diff libinterp/octave-value/ov-struct.cc @ 28179:bea3f8f96f7a stable

Load structures with arbitrary string fieldnames (bug #50831, bug #46645). * ls-oct-text.h, ls-oct-text.cc (read_text_data): Consider additional optional bool argument to skip validation of input name. * ov-struct.cc (octave_struct::load_ascii, octave_scalar_struct::load_ascii): Call read_text_data with additional argument (skip_validation), set to true. * test/bug-50831/bug-50831.tst, test/bug-50831/module.mk: New test files.
author Olaf Till <i7tiol@t-online.de>
date Wed, 19 Apr 2017 15:06:31 +0200
parents bd51beb6205e
children 2a47c8633982 ac7ab2a9018e
line wrap: on
line diff
--- a/libinterp/octave-value/ov-struct.cc	Fri Mar 27 12:47:33 2020 -0700
+++ b/libinterp/octave-value/ov-struct.cc	Wed Apr 19 15:06:31 2017 +0200
@@ -769,8 +769,7 @@
           bool dummy;
 
           // recurse to read cell elements
-          std::string nm
-            = read_text_data (is, "", dummy, t2, j);
+          std::string nm = read_text_data (is, "", dummy, t2, j, false);
 
           if (! is)
             break;
@@ -1432,7 +1431,7 @@
 
           // recurse to read cell elements
           std::string nm
-            = read_text_data (is, "", dummy, t2, j);
+            = read_text_data (is, "", dummy, t2, j, false);
 
           if (! is)
             break;