# HG changeset patch # User Rik # Date 1311784719 25200 # Node ID 67bf9b30f3f968e848b9c2596da603d513ebe28d # Parent 73e75ff9c31b917e05fe82ef7fdb86462b9a3658 Error when given non-string input to tolower, toupper, toascii (Bug #33537). * mappers.cc (tolower, toupper, toascii): Raise error when given non-string input. diff -r 73e75ff9c31b -r 67bf9b30f3f9 src/mappers.cc --- a/src/mappers.cc Tue Jul 26 02:16:13 2011 -0500 +++ b/src/mappers.cc Wed Jul 27 09:38:39 2011 -0700 @@ -1777,10 +1777,13 @@ @end deftypefn") { octave_value retval; - if (args.length () == 1) + + if (args.length () != 1) + print_usage (); + else if (! (args(0).is_string () || args(0).is_cellstr ())) + error ("toascii: S input must be a string or cellstr"); + else retval = args(0).xtoascii (); - else - print_usage (); return retval; } @@ -1803,10 +1806,13 @@ @end deftypefn") { octave_value retval; - if (args.length () == 1) + + if (args.length () != 1) + print_usage (); + else if (! (args(0).is_string () || args(0).is_cellstr ())) + error ("tolower: S input must be a string or cellstr"); + else retval = args(0).xtolower (); - else - print_usage (); return retval; } @@ -1849,10 +1855,13 @@ @end deftypefn") { octave_value retval; - if (args.length () == 1) + + if (args.length () != 1) + print_usage (); + else if (! (args(0).is_string () || args(0).is_cellstr ())) + error ("toupper: S input must be a string or cellstr"); + else retval = args(0).xtoupper (); - else - print_usage (); return retval; }