Mercurial > hg > octave-lyh
changeset 10754:92eb5fb58ebc
fix resize with structs
author | Jaroslav Hajek <highegg@gmail.com> |
---|---|
date | Fri, 25 Jun 2010 10:19:26 +0200 |
parents | bee1b1a2e29a |
children | 6ba7937a6fa4 |
files | src/ChangeLog src/ov-struct.cc src/ov-struct.h src/ov.cc |
diffstat | 4 files changed, 13 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2010-06-25 Jaroslav Hajek <highegg@gmail.com> + + * ov-struct.h (octave_scalar_struct::resize, octave_struct::resize): + Don't ignore fill argument. + 2010-06-25 Jaroslav Hajek <highegg@gmail.com> * oct-map.h (octave_map::octave_map (const dim_vector&, const
--- a/src/ov-struct.cc +++ b/src/ov-struct.cc @@ -555,6 +555,8 @@ else gripe_failed_assignment (); + retval.maybe_mutate (); + return retval; }
--- a/src/ov-struct.h +++ b/src/ov-struct.h @@ -115,8 +115,8 @@ octave_value reshape (const dim_vector& new_dims) const { return map.reshape (new_dims); } - octave_value resize (const dim_vector& dv, bool = false) const - { octave_map tmap = map; tmap.resize (dv); return tmap; } + octave_value resize (const dim_vector& dv, bool fill = false) const + { octave_map tmap = map; tmap.resize (dv, fill); return tmap; } bool is_defined (void) const { return true; } @@ -228,8 +228,8 @@ octave_value reshape (const dim_vector& new_dims) const { return octave_map (map).reshape (new_dims); } - octave_value resize (const dim_vector& dv, bool = false) const - { octave_map tmap = map; tmap.resize (dv); return tmap; } + octave_value resize (const dim_vector& dv, bool fill = false) const + { octave_map tmap = map; tmap.resize (dv, fill); return tmap; } bool is_defined (void) const { return true; }
--- a/src/ov.cc +++ b/src/ov.cc @@ -2593,7 +2593,7 @@ case '(': { if (type.length () > 1 && type[1] == '.') - retval = Octave_map (); + retval = octave_map (); else retval = octave_value (rhs.empty_clone ()); } @@ -2604,7 +2604,7 @@ break; case '.': - retval = Octave_map (); + retval = octave_scalar_map (); break; default: