Mercurial > hg > octave-nkf
diff liboctave/array/dRowVector.cc @ 20676:16b9ec39ff46
Return empty matrix when linspace called with 0 points (bug #45820)
* NEWS: Announce change.
* data.cc (Flinspace): Verify input N is scalar. Verify inputs BASE, LIMIT are
scalar/vectors. Add BIST tests for input validation, complex values, class of
output, Matlab compatibility. Clarify documentation about vector inputs.
* CMatrix.cc, CRowVector.cc, dMatrix.cc, dRowVector.cc, fCMatrix.cc,
fCRowVector.cc, fMatrix.cc, fRowVector.cc:
Return empty matrix when N < 1.
author | Rik <rik@octave.org> |
---|---|
date | Thu, 27 Aug 2015 13:12:21 -0700 |
parents | a9574e3c6e9e |
children |
line wrap: on
line diff
--- a/liboctave/array/dRowVector.cc +++ b/liboctave/array/dRowVector.cc @@ -293,14 +293,19 @@ RowVector linspace (double x1, double x2, octave_idx_type n) { - if (n < 1) n = 1; + NoAlias<RowVector> retval; - NoAlias<RowVector> retval (n); + if (n < 1) + return retval; + else + retval.clear (n); + + retval(0) = x1; double delta = (x2 - x1) / (n - 1); - retval(0) = x1; for (octave_idx_type i = 1; i < n-1; i++) retval(i) = x1 + i*delta; + retval(n-1) = x2; return retval;