Mercurial > hg > octave-nkf
diff src/ov-base-mat.cc @ 4858:499d2ca46982
[project @ 2004-04-08 18:00:43 by jwe]
author | jwe |
---|---|
date | Thu, 08 Apr 2004 18:00:43 +0000 |
parents | 7a3eb3cc292b |
children | e674c7111b88 |
line wrap: on
line diff
--- a/src/ov-base-mat.cc +++ b/src/ov-base-mat.cc @@ -149,7 +149,8 @@ { idx_vector i = idx (0).index_vector (); - retval = MT (matrix.index (i, resize_ok, MT::resize_fill_value ())); + if (! error_state) + retval = MT (matrix.index (i, resize_ok, MT::resize_fill_value ())); } break; @@ -158,20 +159,31 @@ if (n_idx == 2 && nd == 2) { idx_vector i = idx (0).index_vector (); - idx_vector j = idx (1).index_vector (); + + if (! error_state) + { + idx_vector j = idx (1).index_vector (); - retval = MT (matrix.index (i, j, resize_ok, - MT::resize_fill_value ())); + if (! error_state) + retval = MT (matrix.index (i, j, resize_ok, + MT::resize_fill_value ())); + } } else { Array<idx_vector> idx_vec (n_idx); for (int i = 0; i < n_idx; i++) - idx_vec(i) = idx(i).index_vector (); + { + idx_vec(i) = idx(i).index_vector (); - retval = MT (matrix.index (idx_vec, resize_ok, - MT::resize_fill_value ())); + if (error_state) + break; + } + + if (! error_state) + retval = MT (matrix.index (idx_vec, resize_ok, + MT::resize_fill_value ())); } } break;