Mercurial > hg > octave-nkf
diff src/pr-output.cc @ 7896:92c26470fe56
Frats fix for nargin==0
author | David Bateman <dbateman@free.fr> |
---|---|
date | Wed, 25 Jun 2008 12:46:32 +0200 |
parents | 82be108cc558 |
children | 63dbb85452cc |
line wrap: on
line diff
--- a/src/pr-output.cc +++ b/src/pr-output.cc @@ -2766,18 +2766,20 @@ int nargin = args.length (); - unwind_protect::begin_frame ("Frats"); - - unwind_protect_int (rat_string_len); - - rat_string_len = 9; - - if (nargin == 2) - rat_string_len = args(1).nint_value (); - - if (! error_state) + if (nargin < 1 || nargin > 2 || nargout > 1) + print_usage (); + else { - if (nargin < 3 && nargout < 2) + unwind_protect::begin_frame ("Frats"); + + unwind_protect_int (rat_string_len); + + rat_string_len = 9; + + if (nargin == 2) + rat_string_len = args(1).nint_value (); + + if (! error_state) { octave_value arg = args(0); @@ -2817,12 +2819,10 @@ else error ("rats: expecting numeric input"); } - else - print_usage (); + + unwind_protect::run_frame ("Frats"); } - unwind_protect::run_frame ("Frats"); - return retval; }