# HG changeset patch # User David Bateman # Date 1214390792 -7200 # Node ID 92c26470fe56d7ec36f9ff041221ce07f51be9a4 # Parent f1a1f6dd7fac4a6d98932571657d19bbd7b3dc0a Frats fix for nargin==0 diff -r f1a1f6dd7fac -r 92c26470fe56 src/ChangeLog --- a/src/ChangeLog Fri Jun 20 23:38:44 2008 +0200 +++ b/src/ChangeLog Wed Jun 25 12:46:32 2008 +0200 @@ -70,6 +70,10 @@ * error.cc (verror): Restore newline in msg_string. Stripping "error: " prefix when buffering error messages is no longer neeed. +2008-06-25 David Bateman + + * pr-output.cc (Frats): Print usage if nargin == 0. + 2008-06-10 John W. Eaton * mexproto.h (mxCreateLogicalScalar): Declar arg as mxLogical, not int. diff -r f1a1f6dd7fac -r 92c26470fe56 src/pr-output.cc --- a/src/pr-output.cc Fri Jun 20 23:38:44 2008 +0200 +++ b/src/pr-output.cc Wed Jun 25 12:46:32 2008 +0200 @@ -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; }