changeset 4705:a1b165f5e934

[project @ 2004-01-22 04:26:19 by jwe]
author jwe
date Thu, 22 Jan 2004 04:26:19 +0000
parents e1b71baef20c
children 2c73119a576a
files liboctave/Array-util.cc src/ChangeLog src/ov-cell.cc
diffstat 3 files changed, 13 insertions(+), 11 deletions(-) [+]
line wrap: on
line diff
--- a/liboctave/Array-util.cc	Thu Jan 22 04:03:21 2004 +0000
+++ b/liboctave/Array-util.cc	Thu Jan 22 04:26:19 2004 +0000
@@ -39,7 +39,7 @@
     {
       for (int i = 0; i < n; i++)
 	{
-	  if (ra_idx(i) < 0 || ra_idx(i) > dimensions (i))
+	  if (ra_idx(i) < 0 || ra_idx(i) > dimensions(i))
 	    {
 	      retval = false;
 	      break;
--- a/src/ChangeLog	Thu Jan 22 04:03:21 2004 +0000
+++ b/src/ChangeLog	Thu Jan 22 04:26:19 2004 +0000
@@ -1,5 +1,7 @@
 2004-01-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
 
+	* ov-cell.cc (octave_cell::subsref): Make '{' case N-d aware.
+
 	* ov-scalar.cc (streamoff_array_value): New function.
 	* ov-scalar.h: Provide decl.
 
--- a/src/ov-cell.cc	Thu Jan 22 04:03:21 2004 +0000
+++ b/src/ov-cell.cc	Thu Jan 22 04:26:19 2004 +0000
@@ -81,16 +81,16 @@
 	      retval = tcell(0,0);
 	    else
 	      {
-		int nr = tcell.rows ();
-		int nc = tcell.columns ();
-		octave_value_list lst (nr * nc, octave_value ());
-		int k = 0;
-		for (int j = 0; j < nc; j++)
-		  for (int i = 0; i < nr; i++)
-		    {
-		      OCTAVE_QUIT;
-		      lst(k++) = tcell(i,j);
-		    }
+		int n = tcell.numel ();
+
+		octave_value_list lst (n, octave_value ());
+
+		for (int i = 0; i < n; i++)
+		  {
+		    OCTAVE_QUIT;
+		    lst(i) = tcell(i);
+		  }
+
 		retval = octave_value (lst, true);
 	      }
 	  }