# HG changeset patch # User Jaroslav Hajek # Date 1257847119 -3600 # Node ID 384616240a8fef58db84f33f52252abe9a344e7e # Parent 6e425f6be618c297f09fb0beaa02b3d643f95154 fix internal numel on classes diff --git a/src/ChangeLog b/src/ChangeLog --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,9 @@ +2009-11-10 Jaroslav Hajek + + * ov-class.cc (octave_class::numel): Use base version if called from + built-in assignment. + (octave_class::size): Ditto. + 2009-11-10 Jaroslav Hajek * DLD-FUNCTIONS/max.cc (Fcummin, Fcummax): Simplify examples in docs. diff --git a/src/ov-class.cc b/src/ov-class.cc --- a/src/ov-class.cc +++ b/src/ov-class.cc @@ -297,6 +297,9 @@ Matrix octave_class::size (void) { + if (in_class_method () || called_from_builtin ()) + return octave_base_value::size (); + Matrix retval (1, 2, 1.0); octave_value meth = symbol_table::find_method ("size", class_name ()); @@ -318,6 +321,9 @@ octave_idx_type octave_class::numel (const octave_value_list& idx) { + if (in_class_method () || called_from_builtin ()) + return octave_base_value::numel (idx); + octave_idx_type retval = -1; const std::string cn = class_name ();