# HG changeset patch # User Marco Caliari # Date 1301591999 25200 # Node ID 1f0243949b77c79031f8cd6df8596d8d589e78e0 # Parent 4715ce9f911d15c44236fc020086af7a4a4af277 spdiags.m: Treat empty vector (1x0 or 0x1) the same as diag(). diff -r 4715ce9f911d -r 1f0243949b77 scripts/ChangeLog --- a/scripts/ChangeLog Thu Mar 31 10:09:34 2011 -0700 +++ b/scripts/ChangeLog Thu Mar 31 10:19:59 2011 -0700 @@ -1,3 +1,7 @@ +2011-03-31 Marco Caliari + + * sparse/spdiags.m: Treat empty vector (1x0 or 0x1) the same as diag(). + 2011-03-31 Rik * statistics/base/cor.m: Increase tolerance of %!tests using random diff -r 4715ce9f911d -r 1f0243949b77 scripts/sparse/spdiags.m --- a/scripts/sparse/spdiags.m Thu Mar 31 10:09:34 2011 -0700 +++ b/scripts/sparse/spdiags.m Thu Mar 31 10:19:59 2011 -0700 @@ -79,10 +79,16 @@ ## Create new matrix of size mxn using v,c [j, i, v] = find (v); offset = max (min (c(:), n-m), 0); - j = j(:) + offset(i); + j = j + offset(i); i = j-c(:)(i); idx = i > 0 & i <= m & j > 0 & j <= n; A = sparse (i(idx), j(idx), v(idx), m, n); endif endfunction + +%!test +%assert(spdiags(zeros(1,0),1,1,1),0) + +%!test +%assert(spdiags(zeros(0,1),1,1,1),0)