# HG changeset patch # User John W. Eaton # Date 1272343948 14400 # Node ID 87f879cf48fd9917247944e482f463e397019d81 # Parent 384c514bbae22359f11378c23c069e94f88c94fe don't alter arg values in call to abs or sign for integer values diff -r 384c514bbae2 -r 87f879cf48fd liboctave/ChangeLog --- a/liboctave/ChangeLog Mon Apr 26 23:14:24 2010 +0200 +++ b/liboctave/ChangeLog Tue Apr 27 00:52:28 2010 -0400 @@ -1,3 +1,8 @@ +2010-04-27 John W. Eaton + + * intNDArray.cc (intNDArray::abs, intNDArray::signum): + Create new vector for return values. Fixes bug #29685. + 2010-04-23 Jaroslav Hajek * Sparse.cc (Sparse::assign): Fix typos. diff -r 384c514bbae2 -r 87f879cf48fd liboctave/intNDArray.cc --- a/liboctave/intNDArray.cc Mon Apr 26 23:14:24 2010 +0200 +++ b/liboctave/intNDArray.cc Tue Apr 27 00:52:28 2010 -0400 @@ -174,7 +174,7 @@ intNDArray::abs (void) const { octave_idx_type nel = this->nelem (); - intNDArray ret (*this); + intNDArray ret (this->dims ()); for (octave_idx_type i = 0; i < nel; i++) { @@ -190,7 +190,7 @@ intNDArray::signum (void) const { octave_idx_type nel = this->nelem (); - intNDArray ret (*this); + intNDArray ret (this->dims ()); for (octave_idx_type i = 0; i < nel; i++) {