Mercurial > octave
changeset 26196:b8f23ab958e8
surfl.m: Fix input validation for 4x4 input matrices (bug #55180)
* surfl.m: Check that any material property input or light source location
input is a vector before presuming it to be one of those.
author | Rik <rik@octave.org> |
---|---|
date | Mon, 10 Dec 2018 16:58:22 -0800 |
parents | a5094f65012c |
children | 95633ec174cf |
files | scripts/plot/draw/surfl.m |
diffstat | 1 files changed, 3 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/scripts/plot/draw/surfl.m Mon Dec 10 14:38:21 2018 -0800 +++ b/scripts/plot/draw/surfl.m Mon Dec 10 16:58:22 2018 -0800 @@ -109,7 +109,8 @@ ## diffuse reflection strength, ## specular reflection strength, ## specular shine] - if (isnumeric (varargin{end}) && length (varargin{end}) == 4) + if (isnumeric (varargin{end}) && isvector (varargin{end}) + && (numel (varargin{end}) == 4)) r = varargin{end}; varargin(end) = []; else @@ -119,7 +120,7 @@ ## Check for light vector (lv) argument. have_lv = false; - if (isnumeric (varargin{end})) + if (isnumeric (varargin{end}) && isvector (varargin{end})) len = numel (varargin{end}); lastarg = varargin{end}; if (len == 3)