Mercurial > octave-nkf
diff src/oct-obj.cc @ 3180:c17387059fd3
[project @ 1998-09-24 18:59:11 by jwe]
author | jwe |
---|---|
date | Thu, 24 Sep 1998 19:00:19 +0000 |
parents | b9e64477f703 |
children | 7a5a5da64756 |
line wrap: on
line diff
--- a/src/oct-obj.cc Wed Jul 29 19:50:02 1998 +0000 +++ b/src/oct-obj.cc Thu Sep 24 19:00:19 1998 +0000 @@ -112,12 +112,32 @@ if (all_strings_p ()) { - int n = length (); - argv.resize (n+1); + int len = length (); + + int total_nr = 0; + + for (int i = 0; i < len; i++) + total_nr += elem(i).rows (); + + argv.resize (total_nr+1); + argv[0] = fcn_name; - for (int i = 0; i < n; i++) - argv[i+1] = elem(i).string_value (); + int k = 1; + for (int i = 0; i < len; i++) + { + int nr = elem(i).rows (); + + if (nr == 1) + argv[k++] = elem(i).string_value (); + else + { + string_vector tmp = elem(i).all_strings (); + + for (int j = 0; j < nr; j++) + argv[k++] = tmp[j]; + } + } } else error ("%s: expecting all arguments to be strings", fcn_name.c_str ());