changeset 5459:ff40c78cebf0

[project @ 2005-09-20 19:18:34 by jwe]
author jwe
date Tue, 20 Sep 2005 19:18:35 +0000
parents 48ce24e8247c
children eaedbf469316
files scripts/ChangeLog scripts/general/isvector.m scripts/general/postpad.m scripts/general/prepad.m src/ChangeLog src/pt-bp.cc
diffstat 6 files changed, 28 insertions(+), 8 deletions(-) [+]
line wrap: on
line diff
--- a/scripts/ChangeLog
+++ b/scripts/ChangeLog
@@ -1,3 +1,11 @@
+2005-09-20  John W. Eaton  <jwe@octave.org>
+
+	* general/isvector.m: Improve compatibility.
+
+	* general/postpad.m: Allow first argument to be a scalar.
+	Allow padding to extend dimensionality.
+	* general/prepad.m: Likewise.
+
 2005-09-14  Daniel  <durbano@shbano.com>
 
 	* statistics/tests/bartlett_test.m, linear-algebra/cross.m,
--- a/scripts/general/isvector.m
+++ b/scripts/general/isvector.m
@@ -31,7 +31,8 @@
   retval = 0;
 
   if (nargin == 1)
-    retval = (ismatrix (x) && ! isempty (x) && prod (size (x)) == length (x));
+    sz = size (x);
+    retval = (isnumeric (x) && ndims (x) == 2 && (sz(1) == 1 || sz(2) == 1));
   else
     usage ("isvector (x)");
   endif
--- a/scripts/general/postpad.m
+++ b/scripts/general/postpad.m
@@ -57,13 +57,16 @@
     endif
   endif
 
-  if (! ismatrix (x))
-    error ("first argument must be a vector or matrix");
-  elseif (! isscalar (l) || l < 0)
+  if (! isscalar (l) || l < 0)
     error ("second argument must be a positive scaler");
   endif
 
+  if (dim > nd)
+    sz(nd+1:dim) = 1;
+  endif
+
   d = sz (dim);
+
   if (d >= l)
     idx = cell ();
     for i = 1:nd
--- a/scripts/general/prepad.m
+++ b/scripts/general/prepad.m
@@ -70,12 +70,14 @@
     endif
   endif
 
-  if (! ismatrix (x))
-    error ("first argument must be a vector or matrix");
-  elseif (! isscalar (l) || l < 0)
+  if (! isscalar (l) || l < 0)
     error ("second argument must be a positive scaler");
   endif
 
+  if (dim > nd)
+    sz(nd+1:dim) = 1;
+  endif
+
   d = sz (dim);
 
   if (d >= l)
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,8 @@
+2005-09-19  John W. Eaton  <jwe@octave.org>
+
+	* pt-bp.cc (tree_breakpoint::visit_index_expression):
+	Avoid dereferencing invalid pointer.
+
 2005-09-19  David Bateman  <dbateman@free.fr>
 
 	* Makefile.in (OCT_LINK_DEPS): Include UFsparse libraries.
--- a/src/pt-bp.cc
+++ b/src/pt-bp.cc
@@ -363,7 +363,8 @@
 	{
 	  tree_argument_list *elt = *p;
 
-	  elt->accept (*this);
+	  if (elt)
+	    elt->accept (*this);
 	}
     }
 }