# HG changeset patch # User jwe # Date 949099732 0 # Node ID 17261f602206466a75a787284939dfd401749269 # Parent 2c7524ffdbf54381a68d94d3a909333b4422880a [project @ 2000-01-28 22:48:51 by jwe] diff --git a/liboctave/Array2.h b/liboctave/Array2.h --- a/liboctave/Array2.h +++ b/liboctave/Array2.h @@ -43,12 +43,10 @@ template class Array2 : public Array { -private: +protected: int get_size (int r, int c) const; -protected: - Array2 (T *d, int n, int m) : Array (d, get_size (n, m)) { d1 = n; diff --git a/liboctave/Array3.cc b/liboctave/Array3.cc --- a/liboctave/Array3.cc +++ b/liboctave/Array3.cc @@ -66,7 +66,9 @@ int old_d3 = dim3 (); int old_len = length (); - rep = new ArrayRep (r*c*p); + int ts = get_size (get_size (r, c), p); + + rep = new ArrayRep (ts); d1 = r; d2 = c; @@ -111,7 +113,9 @@ int old_len = length (); - rep = new ArrayRep (r*c*p); + int ts = get_size (get_size (r, c), p); + + rep = new ArrayRep (ts); d1 = r; d2 = c; diff --git a/liboctave/Array3.h b/liboctave/Array3.h --- a/liboctave/Array3.h +++ b/liboctave/Array3.h @@ -45,7 +45,7 @@ int d3; - Array3 (T *d, int n, int m, int k) : Array2 (d, n, m*k) + Array3 (T *d, int n, int m, int k) : Array2 (d, n, get_size (m, k)) { d2 = m; d3 = k; @@ -61,7 +61,7 @@ set_max_indices (3); } - Array3 (int n, int m, int k) : Array2 (n, m*k) + Array3 (int n, int m, int k) : Array2 (n, get_size (m, k)) { d2 = m; d3 = k; diff --git a/liboctave/ChangeLog b/liboctave/ChangeLog --- a/liboctave/ChangeLog +++ b/liboctave/ChangeLog @@ -1,5 +1,9 @@ 2000-01-28 John W. Eaton + * Array2.h (Array2::get_size): Now protected instead of private. + * Array3.h, Array3.cc: Use it in constructors and resize methods + to get total size to be allocated. + * DASSL.cc (DASSL::integrate): Declare do_restart and save_output as bool, not int.