Mercurial > hg > octave-lyh
comparison scripts/plot/contourc.m @ 10634:60542efcfa2c
Check input arguments for size and type (bug #29861).
Prevents segmentation fault with odd inputs.
author | Rik <octave@nomad.inbox5.com> |
---|---|
date | Sun, 16 May 2010 18:28:59 -0700 |
parents | 09da0bd91412 |
children | be55736a0783 |
comparison
equal
deleted
inserted
replaced
10633:d022061c288d | 10634:60542efcfa2c |
---|---|
62 function [cout, lev] = contourc (varargin) | 62 function [cout, lev] = contourc (varargin) |
63 | 63 |
64 if (nargin == 1) | 64 if (nargin == 1) |
65 vn = 10; | 65 vn = 10; |
66 z = varargin{1}; | 66 z = varargin{1}; |
67 [nr, nc] = size (z); | |
68 x = 1:nc; | |
69 y = 1:nr; | |
70 elseif (nargin == 2) | 67 elseif (nargin == 2) |
71 vn = varargin{2}; | 68 vn = varargin{2}; |
72 z = varargin{1}; | 69 z = varargin{1}; |
73 [nr, nc] = size (z); | 70 [nr, nc] = size (z); |
74 x = 1:nc; | 71 x = 1:nc; |
83 x = varargin{1}; | 80 x = varargin{1}; |
84 y = varargin{2}; | 81 y = varargin{2}; |
85 z = varargin{3}; | 82 z = varargin{3}; |
86 else | 83 else |
87 print_usage (); | 84 print_usage (); |
85 endif | |
86 | |
87 if (!ismatrix (z) || isvector (z) || isscalar (z)) | |
88 error ("contourc: z argument must be a matrix"); | |
88 endif | 89 endif |
89 | 90 |
90 if (isscalar (vn)) | 91 if (isscalar (vn)) |
91 vv = linspace (min (z(:)), max (z(:)), vn+2)(2:end-1); | 92 vv = linspace (min (z(:)), max (z(:)), vn+2)(2:end-1); |
92 else | 93 else |