# HG changeset patch # User David Bateman # Date 1210693535 -7200 # Node ID ce52af0e4a10028397e8c8931ae95fa6a2ef76cd # Parent f83be206eca1f27420746e1675deb3b1271e98df all false logical indexing fix diff --git a/liboctave/ChangeLog b/liboctave/ChangeLog --- a/liboctave/ChangeLog +++ b/liboctave/ChangeLog @@ -1,3 +1,9 @@ +2008-05-13 David Bateman + + * idx-vector.cc (IDX_VEC_REP::idx_vector_rep (const boolNDArray&)): + If len is zero size the index vector in the same manner as if len + is not zero. + 2008-05-05 John W. Eaton * cmd-edit.cc (command_editor::re_read_init_file, diff --git a/liboctave/idx-vector.cc b/liboctave/idx-vector.cc --- a/liboctave/idx-vector.cc +++ b/liboctave/idx-vector.cc @@ -270,11 +270,13 @@ range(0), initialized (0), frozen (0), colon_equiv_checked (0), colon_equiv (0), orig_dims () { + dim_vector dv = bnda.dims (); + + orig_dims = ((dv.length () == 2 && dv(0) == 1) + ? dim_vector (1, len) : orig_dims = dim_vector (len, 1)); + if (len == 0) - { - orig_dims = dim_vector (0, 0); - initialized = 1; - } + initialized = 1; else { data = new octave_idx_type [len]; @@ -285,11 +287,6 @@ if (bnda.elem (i)) data[k++] = i; - dim_vector dv = bnda.dims (); - - orig_dims = ((dv.length () == 2 && dv(0) == 1) - ? dim_vector (1, len) : orig_dims = dim_vector (len, 1)); - init_state (); } }