comparison liboctave/Array.cc @ 4759:364bbf35dbfa

[project @ 2004-02-15 00:08:06 by jwe]
author jwe
date Sun, 15 Feb 2004 00:08:07 +0000
parents c48180a45d34
children bec345670e56
comparison
equal deleted inserted replaced
4758:a308566c8b42 4759:364bbf35dbfa
74 new_dimensions(k++) = dimensions(i); 74 new_dimensions(k++) = dimensions(i);
75 } 75 }
76 76
77 if (dims_changed) 77 if (dims_changed)
78 { 78 {
79 if (k == 0) 79 switch (k)
80 new_dimensions = dim_vector (1); 80 {
81 else 81 case 0:
82 new_dimensions.resize (k); 82 new_dimensions = dim_vector (1, 1);
83 break;
84
85 case 1:
86 {
87 int tmp = new_dimensions(0);
88
89 new_dimensions.resize (2);
90
91 if (dimensions(0) == 1)
92 {
93 new_dimensions(0) = 1;
94 new_dimensions(1) = tmp;
95 }
96 else
97 {
98 new_dimensions(0) = tmp;
99 new_dimensions(1) = 1;
100 }
101 }
102 break;
103
104 default:
105 new_dimensions.resize (k);
106 break;
107 }
83 108
84 retval.make_unique (); 109 retval.make_unique ();
85 110
86 retval.dimensions = new_dimensions; 111 retval.dimensions = new_dimensions;
87 } 112 }